gdb/python: move PyLong_From* calls into py-utils.c
authorAndrew Burgess <andrew.burgess@embecosm.com>
Wed, 26 May 2021 20:28:11 +0000 (21:28 +0100)
committerAndrew Burgess <andrew.burgess@embecosm.com>
Mon, 21 Jun 2021 15:09:06 +0000 (16:09 +0100)
We already have two helper functions in py-utils.c:

  gdb_py_object_from_longest (LONGEST l)
  gdb_py_object_from_ulongest (ULONGEST l)

these wrap around calls to either PyLong_FromLongLong,
PyLong_FromLong, or PyInt_From_Long (if Python 2 is being used).

There is one place in gdb/python/* where a call to PyLong_FromLong was
added outside of the above utility functions, this was done in the
recent commit:

  commit 55789354fcbaf879f3ca8475b647b2747dec486e
  Date:   Fri May 14 11:56:31 2021 +0200

      gdb/python: add a 'connection_num' attribute to Inferior objects

In this commit I replace the direct use of PyLong_FromLong with a call
to gdb_py_object_from_longest.  The only real change with this commit,
is that, for Python 2, we will now end up calling PyInt_FromLong
instead of PyLong_FromLong, but this should be invisible to the user.
For Python 3 there should be absolutely no change.

gdb/ChangeLog:

* python/py-inferior.c (infpy_get_connection_num): Call
gdb_py_object_from_longest instead of PyLong_FromLong directly.

gdb/ChangeLog
gdb/python/py-inferior.c

index a221a841e0afd2dcd648003542e77fd3126d2201..24aeaa416391f94ad5ac1aef19c3b3dd4f0713f1 100644 (file)
@@ -1,3 +1,8 @@
+2021-06-21  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * python/py-inferior.c (infpy_get_connection_num): Call
+       gdb_py_object_from_longest instead of PyLong_FromLong directly.
+
 2021-06-21  Andrew Burgess  <andrew.burgess@embecosm.com>
 
        * python/py-unwind.c (unwind_infopy_add_saved_register): Handle
index 336c6426b8c86289adbc7c23ad55cd4ffd101490..39efa804d80129be23724eafd138e3cc7833eeec 100644 (file)
@@ -441,7 +441,7 @@ infpy_get_connection_num (PyObject *self, void *closure)
   if (target == nullptr)
     Py_RETURN_NONE;
 
-  return PyLong_FromLong (target->connection_number);
+  return gdb_py_object_from_longest (target->connection_number).release ();
 }
 
 static PyObject *