diff options
-rw-r--r-- | gdb/ChangeLog | 6 | ||||
-rw-r--r-- | gdb/dwarf2-frame.c | 8 |
2 files changed, 12 insertions, 2 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index ee1ed41..f03e1f9 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2003-08-25 Daniel Jacobowitz <drow@mvista.com> + + PR java/1322 + * dwarf2-frame.c (dwarf2_frame_find_fde): Check whether any FDEs are + available before calling SECT_OFF_TEXT. + 2003-08-25 Jeff Johnston <jjohnstn@redhat.com> * ia64-tdep.c (pseudo_regs): New enum that lists gr32-gr127, p0-p63, diff --git a/gdb/dwarf2-frame.c b/gdb/dwarf2-frame.c index c40726a..9b23841 100644 --- a/gdb/dwarf2-frame.c +++ b/gdb/dwarf2-frame.c @@ -1024,9 +1024,13 @@ dwarf2_frame_find_fde (CORE_ADDR *pc) struct dwarf2_fde *fde; CORE_ADDR offset; - offset = ANOFFSET (objfile->section_offsets, SECT_OFF_TEXT (objfile)); - fde = objfile_data (objfile, dwarf2_frame_data); + if (fde == NULL) + continue; + + gdb_assert (objfile->section_offsets); + offset = ANOFFSET (objfile->section_offsets, SECT_OFF_TEXT (objfile)); + while (fde) { if (*pc >= fde->initial_location + offset |