aboutsummaryrefslogtreecommitdiff
path: root/gdb/solib-svr4.c
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2009-11-10 21:36:48 +0000
committerJoseph Myers <joseph@codesourcery.com>2009-11-10 21:36:48 +0000
commitde64a9acc6e85d469fd1402da8e85310f0610f0d (patch)
treeb5be220c4a612e9fe5872f8640915af095658378 /gdb/solib-svr4.c
parent751254059d4238e2a67a7644306f1185523816ca (diff)
downloadgdb-de64a9acc6e85d469fd1402da8e85310f0610f0d.zip
gdb-de64a9acc6e85d469fd1402da8e85310f0610f0d.tar.gz
gdb-de64a9acc6e85d469fd1402da8e85310f0610f0d.tar.bz2
* solib-svr4.c (enable_break): Call
gdbarch_convert_from_func_ptr_addr on results of looking up fallback symbol names.
Diffstat (limited to 'gdb/solib-svr4.c')
-rw-r--r--gdb/solib-svr4.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/gdb/solib-svr4.c b/gdb/solib-svr4.c
index d685ea5..21055f6 100644
--- a/gdb/solib-svr4.c
+++ b/gdb/solib-svr4.c
@@ -1436,8 +1436,11 @@ enable_break (struct svr4_info *info)
msymbol = lookup_minimal_symbol (*bkpt_namep, NULL, symfile_objfile);
if ((msymbol != NULL) && (SYMBOL_VALUE_ADDRESS (msymbol) != 0))
{
- create_solib_event_breakpoint (target_gdbarch,
- SYMBOL_VALUE_ADDRESS (msymbol));
+ sym_addr = SYMBOL_VALUE_ADDRESS (msymbol);
+ sym_addr = gdbarch_convert_from_func_ptr_addr (target_gdbarch,
+ sym_addr,
+ &current_target);
+ create_solib_event_breakpoint (target_gdbarch, sym_addr);
return 1;
}
}
@@ -1447,8 +1450,11 @@ enable_break (struct svr4_info *info)
msymbol = lookup_minimal_symbol (*bkpt_namep, NULL, symfile_objfile);
if ((msymbol != NULL) && (SYMBOL_VALUE_ADDRESS (msymbol) != 0))
{
- create_solib_event_breakpoint (target_gdbarch,
- SYMBOL_VALUE_ADDRESS (msymbol));
+ sym_addr = SYMBOL_VALUE_ADDRESS (msymbol);
+ sym_addr = gdbarch_convert_from_func_ptr_addr (target_gdbarch,
+ sym_addr,
+ &current_target);
+ create_solib_event_breakpoint (target_gdbarch, sym_addr);
return 1;
}
}