aboutsummaryrefslogtreecommitdiff
path: root/gdb/target-delegates.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/target-delegates.c')
-rw-r--r--gdb/target-delegates.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c
index ebecbeb..f3000b7 100644
--- a/gdb/target-delegates.c
+++ b/gdb/target-delegates.c
@@ -510,6 +510,13 @@ tdefault_has_exited (struct target_ops *self, int arg1, int arg2, int *arg3)
return 0;
}
+static void
+delegate_mourn_inferior (struct target_ops *self)
+{
+ self = self->beneath;
+ self->to_mourn_inferior (self);
+}
+
static char *
delegate_extra_thread_info (struct target_ops *self, struct thread_info *arg1)
{
@@ -1247,6 +1254,8 @@ install_delegators (struct target_ops *ops)
ops->to_set_syscall_catchpoint = delegate_set_syscall_catchpoint;
if (ops->to_has_exited == NULL)
ops->to_has_exited = delegate_has_exited;
+ if (ops->to_mourn_inferior == NULL)
+ ops->to_mourn_inferior = delegate_mourn_inferior;
if (ops->to_extra_thread_info == NULL)
ops->to_extra_thread_info = delegate_extra_thread_info;
if (ops->to_thread_name == NULL)
@@ -1403,6 +1412,7 @@ install_dummy_methods (struct target_ops *ops)
ops->to_remove_exec_catchpoint = tdefault_remove_exec_catchpoint;
ops->to_set_syscall_catchpoint = tdefault_set_syscall_catchpoint;
ops->to_has_exited = tdefault_has_exited;
+ ops->to_mourn_inferior = default_mourn_inferior;
ops->to_extra_thread_info = tdefault_extra_thread_info;
ops->to_thread_name = tdefault_thread_name;
ops->to_stop = tdefault_stop;