RFC: fix latent bug in syms_from_objfile_1
Tom Tromey
tromey@redhat.com
Wed Mar 20 18:23:00 GMT 2013
I recently upgraded to Fedora 18. I randomly see this from gdb:
warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7ffff7ffd000
I tracked this warning down to a buglet in syms_from_objfile_1, which
references addrs->other[0] without first checking addrs->num_sections.
This patch fixes the problem.
Built and regtested on x86-64 Fedora 18.
This actually improves the test results for me by removing a number of
bogus FAILs caused when the warning is emitted.
Any comments?
Tom
2013-03-20 Tom Tromey <tromey@redhat.com>
* symfile.c (syms_from_objfile_1): Check num_sections before
calling addr_info_make_relative.
Index: symfile.c
===================================================================
RCS file: /cvs/src/src/gdb/symfile.c,v
retrieving revision 1.367
diff -u -r1.367 symfile.c
--- symfile.c 14 Mar 2013 20:26:19 -0000 1.367
+++ symfile.c 20 Mar 2013 18:19:42 -0000
@@ -997,7 +997,7 @@
We no longer warn if the lowest section is not a text segment (as
happens for the PA64 port. */
- if (addrs && addrs->other[0].name)
+ if (addrs && addrs->num_sections > 0 && addrs->other[0].name)
addr_info_make_relative (addrs, objfile->obfd);
/* Initialize symbol reading routines for this objfile, allow complaints to
More information about the Gdb-patches
mailing list