diff options
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/dwarf2read.c | 10 |
2 files changed, 15 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index f1e5f6a..da6e1f8 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2010-03-17 Tom Tromey <tromey@redhat.com> + + * dwarf2read.c (dwarf2_get_section_info): Handle case where no + DWARF data is available. + 2010-03-17 Daniel Jacobowitz <dan@codesourcery.com> * symfile.c (generic_load): Reset breakpoints after loading. diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c index cbb7424..3789d09 100644 --- a/gdb/dwarf2read.c +++ b/gdb/dwarf2read.c @@ -1397,6 +1397,16 @@ dwarf2_get_section_info (struct objfile *objfile, const char *section_name, struct dwarf2_per_objfile *data = objfile_data (objfile, dwarf2_objfile_data_key); struct dwarf2_section_info *info; + + /* We may see an objfile without any DWARF, in which case we just + return nothing. */ + if (data == NULL) + { + *sectp = NULL; + *bufp = NULL; + *sizep = 0; + return; + } if (section_is_p (section_name, EH_FRAME_SECTION)) info = &data->eh_frame; else if (section_is_p (section_name, FRAME_SECTION)) |