gdb/python: Make convert_values_to_python return gdbpy_ref<>
Make convert_values_to_python return a gdbpy_ref<> directly rather than building a gdbpy_ref<>, releasing it, and then having a new gdbpy_ref<> created to hold the result. I also added a header comment to convert_values_to_python. gdb/ChangeLog: * python/py-function.c (convert_values_to_python): Return gdbpy_ref<>. Add header comment. (fnpy_call): Adjust.
This commit is contained in:
parent
50db9ef4c0
commit
b352ceb6b4
2 changed files with 12 additions and 3 deletions
|
@ -34,7 +34,10 @@ extern PyTypeObject fnpy_object_type
|
|||
|
||||
|
||||
|
||||
static PyObject *
|
||||
/* Return a reference to a tuple ARGC elements long. Each element of the
|
||||
tuple is a PyObject converted from the corresponding element of ARGV. */
|
||||
|
||||
static gdbpy_ref<>
|
||||
convert_values_to_python (int argc, struct value **argv)
|
||||
{
|
||||
int i;
|
||||
|
@ -50,7 +53,7 @@ convert_values_to_python (int argc, struct value **argv)
|
|||
return NULL;
|
||||
PyTuple_SetItem (result.get (), i, elt.release ());
|
||||
}
|
||||
return result.release ();
|
||||
return result;
|
||||
}
|
||||
|
||||
/* Call a Python function object's invoke method. */
|
||||
|
@ -64,7 +67,7 @@ fnpy_call (struct gdbarch *gdbarch, const struct language_defn *language,
|
|||
gdbpy_enter enter_py (gdbarch, language);
|
||||
struct value *value;
|
||||
gdbpy_ref<> result;
|
||||
gdbpy_ref<> args (convert_values_to_python (argc, argv));
|
||||
gdbpy_ref<> args = convert_values_to_python (argc, argv);
|
||||
|
||||
/* convert_values_to_python can return NULL on error. If we
|
||||
encounter this, do not call the function, but allow the Python ->
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue