diff options
author | Tom Tromey <tromey@redhat.com> | 2013-02-28 19:01:54 +0000 |
---|---|---|
committer | Tom Tromey <tromey@redhat.com> | 2013-02-28 19:01:54 +0000 |
commit | 86a3263fffd5fcd0c7896647dea4dca2b5902da5 (patch) | |
tree | a1d601c5d0518c95dd0c7ab64c38c0bbca65107c /gdb/python/py-block.c | |
parent | 81b52a3ae561ad292cf958fc9148b86b9400e0c5 (diff) | |
download | gdb-86a3263fffd5fcd0c7896647dea4dca2b5902da5.zip gdb-86a3263fffd5fcd0c7896647dea4dca2b5902da5.tar.gz gdb-86a3263fffd5fcd0c7896647dea4dca2b5902da5.tar.bz2 |
* py-block.c (gdbpy_block_for_pc): Call block_for_pc inside
TRY_CATCH.
Diffstat (limited to 'gdb/python/py-block.c')
-rw-r--r-- | gdb/python/py-block.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gdb/python/py-block.c b/gdb/python/py-block.c index 708b6a8..f0b8322 100644 --- a/gdb/python/py-block.c +++ b/gdb/python/py-block.c @@ -370,7 +370,7 @@ PyObject * gdbpy_block_for_pc (PyObject *self, PyObject *args) { gdb_py_ulongest pc; - struct block *block; + struct block *block = NULL; struct obj_section *section = NULL; struct symtab *symtab = NULL; volatile struct gdb_exception except; @@ -382,6 +382,9 @@ gdbpy_block_for_pc (PyObject *self, PyObject *args) { section = find_pc_mapped_section (pc); symtab = find_pc_sect_symtab (pc, section); + + if (symtab != NULL && symtab->objfile != NULL) + block = block_for_pc (pc); } GDB_PY_HANDLE_EXCEPTION (except); @@ -392,7 +395,6 @@ gdbpy_block_for_pc (PyObject *self, PyObject *args) return NULL; } - block = block_for_pc (pc); if (block) return block_to_block_object (block, symtab->objfile); |