mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-11-25 11:04:18 +08:00
Change Python code to use new_reference
This changes a few spots in the Python code to use new_reference rather than the manual incref+constructor that was previously being done. ChangeLog 2018-04-30 Tom Tromey <tom@tromey.com> * varobj.c (varobj_set_visualizer): Use new_reference. * python/python.c (gdbpy_decode_line): Use new_reference. * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use new_reference.
This commit is contained in:
parent
bbfa6f0086
commit
7c66fffc1f
@ -1,3 +1,10 @@
|
||||
2018-04-30 Tom Tromey <tom@tromey.com>
|
||||
|
||||
* varobj.c (varobj_set_visualizer): Use new_reference.
|
||||
* python/python.c (gdbpy_decode_line): Use new_reference.
|
||||
* python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
|
||||
new_reference.
|
||||
|
||||
2018-04-30 Tom Tromey <tom@tromey.com>
|
||||
|
||||
* varobj.c (install_new_value): Use new_reference.
|
||||
|
@ -138,8 +138,8 @@ cmdpy_function (struct cmd_list_element *command,
|
||||
error (_("Could not convert arguments to Python string."));
|
||||
}
|
||||
|
||||
gdbpy_ref<> ttyobj (from_tty ? Py_True : Py_False);
|
||||
Py_INCREF (ttyobj.get ());
|
||||
gdbpy_ref<> ttyobj
|
||||
= gdbpy_ref<>::new_reference (from_tty ? Py_True : Py_False);
|
||||
gdbpy_ref<> result (PyObject_CallMethodObjArgs ((PyObject *) obj, invoke_cst,
|
||||
argobj.get (), ttyobj.get (),
|
||||
NULL));
|
||||
@ -246,8 +246,7 @@ cmdpy_completer_helper (struct cmd_list_element *command,
|
||||
if (word == NULL)
|
||||
{
|
||||
/* "brkchars" phase. */
|
||||
wordobj.reset (Py_None);
|
||||
Py_INCREF (Py_None);
|
||||
wordobj = gdbpy_ref<>::new_reference (Py_None);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -876,10 +876,7 @@ gdbpy_decode_line (PyObject *self, PyObject *args)
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
result.reset (Py_None);
|
||||
Py_INCREF (Py_None);
|
||||
}
|
||||
result = gdbpy_ref<>::new_reference (Py_None);
|
||||
|
||||
gdbpy_ref<> return_result (PyTuple_New (2));
|
||||
if (return_result == NULL)
|
||||
@ -892,10 +889,7 @@ gdbpy_decode_line (PyObject *self, PyObject *args)
|
||||
return NULL;
|
||||
}
|
||||
else
|
||||
{
|
||||
unparsed.reset (Py_None);
|
||||
Py_INCREF (Py_None);
|
||||
}
|
||||
unparsed = gdbpy_ref<>::new_reference (Py_None);
|
||||
|
||||
PyTuple_SetItem (return_result.get (), 0, unparsed.release ());
|
||||
PyTuple_SetItem (return_result.get (), 1, result.release ());
|
||||
|
@ -1455,9 +1455,8 @@ varobj_set_visualizer (struct varobj *var, const char *visualizer)
|
||||
gdbpy_enter_varobj enter_py (var);
|
||||
|
||||
mainmod = PyImport_AddModule ("__main__");
|
||||
gdbpy_ref<> globals (PyModule_GetDict (mainmod));
|
||||
Py_INCREF (globals.get ());
|
||||
|
||||
gdbpy_ref<> globals
|
||||
= gdbpy_ref<>::new_reference (PyModule_GetDict (mainmod));
|
||||
gdbpy_ref<> constructor (PyRun_String (visualizer, Py_eval_input,
|
||||
globals.get (), globals.get ()));
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user