diff options
author | Joseph Myers <joseph@codesourcery.com> | 2009-11-10 21:36:48 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2009-11-10 21:36:48 +0000 |
commit | de64a9acc6e85d469fd1402da8e85310f0610f0d (patch) | |
tree | b5be220c4a612e9fe5872f8640915af095658378 /gdb/solib-svr4.c | |
parent | 751254059d4238e2a67a7644306f1185523816ca (diff) | |
download | gdb-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.c | 14 |
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, + ¤t_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, + ¤t_target); + create_solib_event_breakpoint (target_gdbarch, sym_addr); return 1; } } |