mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-07-28 20:34:54 +08:00
Add support for enabling/disabling individual pretty-printers.
* python/py-prettyprint.c (search_pp_list): Skip disabled printers. * python/python-internal.h (gdbpy_enabled_cst): Declare. * python/python.c (gdbpy_enabled_cst): Define. (_initialize_python): Initialize gdbpy_enabled_cst. * NEWS: Add entry. doc/ * gdb.texinfo (Python API): New node `Disabling Pretty-Printers'. testsuite/ * gdb.python/py-prettyprint.exp: Add new test for enabled and disabled printers. * gdb.python/py-prettyprint.py (disable_lookup_function): New function. (enable_lookup_function): New function.
This commit is contained in:
gdb
@ -48,6 +48,11 @@ search_pp_list (PyObject *list, PyObject *value)
|
||||
if (! function)
|
||||
return NULL;
|
||||
|
||||
/* Skip if disabled. */
|
||||
if (PyObject_HasAttr (function, gdbpy_enabled_cst)
|
||||
&& ! PyObject_IsTrue (PyObject_GetAttr (function, gdbpy_enabled_cst)))
|
||||
continue;
|
||||
|
||||
printer = PyObject_CallFunctionObjArgs (function, value, NULL);
|
||||
if (! printer)
|
||||
return NULL;
|
||||
|
Reference in New Issue
Block a user