mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-05-23 18:26:47 +08:00
python: Make two functions return gdbpy_ref<>
I noticed that we release a gdbpy_ref in pretty_print_one_value only to create it again later. This patch fills the gap by returning a gdbpy_ref all the way. gdb/ChangeLog: * python/py-prettyprint.c (pretty_print_one_value): Return gdbpy_ref<>. (print_string_repr): Adjust. (apply_varobj_pretty_printer): Return gdbpy_ref<>. * python/python-internal.h (apply_varobj_pretty_printer): Return gdbpy_ref<>. * varobj.c (varobj_value_get_print_value): Adjust.
This commit is contained in:
@ -99,6 +99,7 @@
|
||||
from including our python/python.h header file. */
|
||||
#include <Python.h>
|
||||
#include <frameobject.h>
|
||||
#include "py-ref.h"
|
||||
|
||||
#if PY_MAJOR_VERSION >= 3
|
||||
#define IS_PY3K 1
|
||||
@ -691,9 +692,9 @@ int gdbpy_is_value_object (PyObject *obj);
|
||||
|
||||
/* Note that these are declared here, and not in python.h with the
|
||||
other pretty-printer functions, because they refer to PyObject. */
|
||||
PyObject *apply_varobj_pretty_printer (PyObject *print_obj,
|
||||
struct value **replacement,
|
||||
struct ui_file *stream);
|
||||
gdbpy_ref<> apply_varobj_pretty_printer (PyObject *print_obj,
|
||||
struct value **replacement,
|
||||
struct ui_file *stream);
|
||||
PyObject *gdbpy_get_varobj_pretty_printer (struct value *value);
|
||||
gdb::unique_xmalloc_ptr<char> gdbpy_get_display_hint (PyObject *printer);
|
||||
PyObject *gdbpy_default_visualizer (PyObject *self, PyObject *args);
|
||||
|
Reference in New Issue
Block a user