From 3799ccc6c68a2e864690e42a8ae0b64f071d0948 Mon Sep 17 00:00:00 2001 From: Elena Zannoni Date: Thu, 26 Jun 2003 21:20:39 +0000 Subject: [PATCH] 2003-06-26 Elena Zannoni * dwarf2read.c (dwarf2_locate_sections): Ignore empty .eh_frame sections. --- gdb/ChangeLog | 5 +++++ gdb/dwarf2read.c | 10 +++++++--- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index e94d950d04..f453616e5d 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2003-06-26 Elena Zannoni + + * dwarf2read.c (dwarf2_locate_sections): Ignore empty .eh_frame + sections. + 2003-06-26 Michael Chastain * config/djgpp/fnchange.lst: Add gdb/testsuite/gdb.c++/pr-1210.cc, diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c index 55b335da9d..1d68efffbd 100644 --- a/gdb/dwarf2read.c +++ b/gdb/dwarf2read.c @@ -1021,9 +1021,13 @@ dwarf2_locate_sections (bfd *ignore_abfd, asection *sectp, void *ignore_ptr) } else if (STREQ (sectp->name, EH_FRAME_SECTION)) { - dwarf_eh_frame_offset = sectp->filepos; - dwarf_eh_frame_size = bfd_get_section_size_before_reloc (sectp); - dwarf_eh_frame_section = sectp; + flagword aflag = bfd_get_section_flags (ignore_abfd, sectp); + if (aflag & SEC_HAS_CONTENTS) + { + dwarf_eh_frame_offset = sectp->filepos; + dwarf_eh_frame_size = bfd_get_section_size_before_reloc (sectp); + dwarf_eh_frame_section = sectp; + } } else if (STREQ (sectp->name, RANGES_SECTION)) {