aboutsummaryrefslogtreecommitdiff
path: root/gdb/solib-svr4.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/solib-svr4.c')
-rw-r--r--gdb/solib-svr4.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/gdb/solib-svr4.c b/gdb/solib-svr4.c
index 13fea47..b5a0725 100644
--- a/gdb/solib-svr4.c
+++ b/gdb/solib-svr4.c
@@ -1567,12 +1567,20 @@ svr4_free_so (struct so_list *so)
free (so->lm_info);
}
+static void
+svr4_relocate_section_addresses (struct so_list *so,
+ struct section_table *sec)
+{
+ sec->addr += LM_ADDR (so);
+ sec->endaddr += LM_ADDR (so);
+}
+
static struct target_so_ops svr4_so_ops;
void
_initialize_svr4_solib (void)
{
- svr4_so_ops.lm_addr = LM_ADDR;
+ svr4_so_ops.relocate_section_addresses = svr4_relocate_section_addresses;
svr4_so_ops.free_so = svr4_free_so;
svr4_so_ops.clear_solib = svr4_clear_solib;
svr4_so_ops.solib_create_inferior_hook = svr4_solib_create_inferior_hook;