diff options
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/glibc-tdep.c | 7 |
2 files changed, 11 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index b5dd5fc..1cbf335 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2007-01-04 Jim Blandy <jimb@codesourcery.com> + + * glibc-tdep.c (glibc_skip_solib_resolver): Look for '_dl_fixup', + then plain 'fixup'. + 2007-01-04 Joel Brobecker <brobecker@adacore.com> * hpread.c (hpread_start_psymtab): Remove unnecessary extern. diff --git a/gdb/glibc-tdep.c b/gdb/glibc-tdep.c index a37be98..5c3a97a 100644 --- a/gdb/glibc-tdep.c +++ b/gdb/glibc-tdep.c @@ -90,8 +90,13 @@ glibc_skip_solib_resolver (struct gdbarch *gdbarch, CORE_ADDR pc) if (resolver) { + /* The dynamic linker began using this name in early 2005. */ struct minimal_symbol *fixup - = lookup_minimal_symbol ("fixup", NULL, objfile); + = lookup_minimal_symbol ("_dl_fixup", NULL, objfile); + + /* This is the name used in older versions. */ + if (! fixup) + fixup = lookup_minimal_symbol ("fixup", NULL, objfile); if (fixup && SYMBOL_VALUE_ADDRESS (fixup) == pc) return frame_pc_unwind (get_current_frame ()); |