From bdfb387038def636b7db3cd7de0597d7c01349ac Mon Sep 17 00:00:00 2001 From: Jim Blandy Date: Thu, 4 Jan 2007 15:24:12 +0000 Subject: [PATCH] * glibc-tdep.c (glibc_skip_solib_resolver): Look for '_dl_fixup', then plain 'fixup'. --- gdb/ChangeLog | 5 +++++ gdb/glibc-tdep.c | 7 ++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index b5dd5fc4ac..1cbf335408 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2007-01-04 Jim Blandy + + * glibc-tdep.c (glibc_skip_solib_resolver): Look for '_dl_fixup', + then plain 'fixup'. + 2007-01-04 Joel Brobecker * hpread.c (hpread_start_psymtab): Remove unnecessary extern. diff --git a/gdb/glibc-tdep.c b/gdb/glibc-tdep.c index a37be98b99..5c3a97a5ad 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 ());