2011-11-28 Phil Muldoon <pmuldoon@redhat.com>
PR python/13369 PR python/13374 * python/python.c (gdbpy_decode_line): Do not acquire GIL. * python/py-inferior.c (inferior_to_inferior_object): Ditto. * python/py-value.c (valpy_nonzero): Use TRY_CATCH to catch GDB exceptions. * python/py-type.c (typy_strip_typedefs): Ditto. (typy_legacy_template_argument): Ditto. * python/py-inferior.c (inferior_to_inferior_object): Ditto. * python/py-breakpoint.c (bppy_set_ignore_count): Ditto.
This commit is contained in:
parent
641c924047
commit
5d9c59954f
7 changed files with 57 additions and 21 deletions
|
@ -371,14 +371,20 @@ gdbpy_block_for_pc (PyObject *self, PyObject *args)
|
|||
{
|
||||
gdb_py_ulongest pc;
|
||||
struct block *block;
|
||||
struct obj_section *section;
|
||||
struct symtab *symtab;
|
||||
struct obj_section *section = NULL;
|
||||
struct symtab *symtab = NULL;
|
||||
volatile struct gdb_exception except;
|
||||
|
||||
if (!PyArg_ParseTuple (args, GDB_PY_LLU_ARG, &pc))
|
||||
return NULL;
|
||||
|
||||
section = find_pc_mapped_section (pc);
|
||||
symtab = find_pc_sect_symtab (pc, section);
|
||||
TRY_CATCH (except, RETURN_MASK_ALL)
|
||||
{
|
||||
section = find_pc_mapped_section (pc);
|
||||
symtab = find_pc_sect_symtab (pc, section);
|
||||
}
|
||||
GDB_PY_HANDLE_EXCEPTION (except);
|
||||
|
||||
if (!symtab || symtab->objfile == NULL)
|
||||
{
|
||||
PyErr_SetString (PyExc_RuntimeError,
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue