libdw/ChangeLog | 5 +++++
libdw/dwarf_begin_elf.c | 16 +++-------------
2 files changed, 8 insertions(+), 13 deletions(-)
diff --git a/libdw/ChangeLog b/libdw/ChangeLog
index c3dbda9..60f9ae0 100644
--- a/libdw/ChangeLog
+++ b/libdw/ChangeLog
@@ -1,5 +1,10 @@
2012-03-20 Tom Tromey <tromey(a)redhat.com>
+ * dwarf_begin_elf.c (check_section): Remove 'inscngrp' argument.
+ (global_read, scngrp_read): Update.
+
+2012-03-20 Tom Tromey <tromey(a)redhat.com>
+
* libdwP.h (struct Dwarf) [n_sections]: New field.
[sectiondata]: Change type.
* dwarf_end.c (__libdw_free_zdata): Use n_sections.
diff --git a/libdw/dwarf_begin_elf.c b/libdw/dwarf_begin_elf.c
index def8ed6..4a726ce 100644
--- a/libdw/dwarf_begin_elf.c
+++ b/libdw/dwarf_begin_elf.c
@@ -88,7 +88,7 @@ static const char dwarf_scnnames[IDX_last][17] =
static Dwarf *
-check_section (Dwarf *result, GElf_Ehdr *ehdr, Elf_Scn *scn, bool inscngrp)
+check_section (Dwarf *result, GElf_Ehdr *ehdr, Elf_Scn *scn)
{
GElf_Shdr shdr_mem;
GElf_Shdr *shdr;
@@ -106,16 +106,6 @@ check_section (Dwarf *result, GElf_Ehdr *ehdr, Elf_Scn *scn, bool inscngrp)
if (unlikely (shdr->sh_type == SHT_NOBITS))
return result;
- /* Make sure the section is part of a section group only iff we
- really need it. If we are looking for the global (= non-section
- group debug info) we have to ignore all the info in section
- groups. If we are looking into a section group we cannot look at
- a section which isn't part of the section group. */
- if (! inscngrp && (shdr->sh_flags & SHF_GROUP) != 0)
- /* Ignore the section. */
- return result;
-
-
/* We recognize the DWARF section by their names. This is not very
safe and stable but the best we can do. */
const char *scnname = elf_strptr (result->elf, ehdr->e_shstrndx,
@@ -255,7 +245,7 @@ global_read (Dwarf *result, Elf *elf, GElf_Ehdr *ehdr)
Elf_Scn *scn = NULL;
while (result != NULL && (scn = elf_nextscn (elf, scn)) != NULL)
- result = check_section (result, ehdr, scn, false);
+ result = check_section (result, ehdr, scn);
return valid_p (result);
}
@@ -294,7 +284,7 @@ scngrp_read (Dwarf *result, Elf *elf, GElf_Ehdr *ehdr, Elf_Scn *scngrp)
return NULL;
}
- result = check_section (result, ehdr, scn, true);
+ result = check_section (result, ehdr, scn);
if (result == NULL)
break;
}
--
1.7.7.6