gdb/
authorJan Kratochvil <jan.kratochvil@redhat.com>
Wed, 8 Sep 2010 19:49:28 +0000 (19:49 +0000)
committerJan Kratochvil <jan.kratochvil@redhat.com>
Wed, 8 Sep 2010 19:49:28 +0000 (19:49 +0000)
* dwarf2read.c (dwarf2_read_index): Return on no SEC_HAS_CONTENTS.

gdb/ChangeLog
gdb/dwarf2read.c

index 45eb3e701ee18eed34e4fc9d828fbc071e145218..71a63f0f0e244ded97532e1af2c62e44f7102931 100644 (file)
@@ -1,3 +1,7 @@
+2010-09-08  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+       * dwarf2read.c (dwarf2_read_index): Return on no SEC_HAS_CONTENTS.
+
 2010-09-08  Daniel Jacobowitz  <dan@codesourcery.com>
 
        * dwarf2read.c (read_structure_type): Move processing of
index b7d3b216bf3427b45c1bcd4e22977ab86ef1dae0..1379f72587e671f78d8e372e2ec0987887b2224b 100644 (file)
@@ -1904,6 +1904,13 @@ dwarf2_read_index (struct objfile *objfile)
   if (dwarf2_per_objfile->gdb_index.asection == NULL
       || dwarf2_per_objfile->gdb_index.size == 0)
     return 0;
+
+  /* Older elfutils strip versions could keep the section in the main
+     executable while splitting it for the separate debug info file.  */
+  if ((bfd_get_file_flags (dwarf2_per_objfile->gdb_index.asection)
+       & SEC_HAS_CONTENTS) == 0)
+    return 0;
+
   dwarf2_read_section (objfile, &dwarf2_per_objfile->gdb_index);
 
   addr = dwarf2_per_objfile->gdb_index.buffer;