aboutsummaryrefslogtreecommitdiff
path: root/gdb/inf-ptrace.c
diff options
context:
space:
mode:
authorPedro Alves <palves@redhat.com>2008-12-28 16:14:57 +0000
committerPedro Alves <palves@redhat.com>2008-12-28 16:14:57 +0000
commit7a7d33537f13d7556f60efb202b0895712e8ad7d (patch)
tree67cad6faf375248f4f5a93e38872f4cd1ef55367 /gdb/inf-ptrace.c
parent262452ec451590e24be1f034f4fe7fad92eefa9a (diff)
downloadgdb-7a7d33537f13d7556f60efb202b0895712e8ad7d.zip
gdb-7a7d33537f13d7556f60efb202b0895712e8ad7d.tar.gz
gdb-7a7d33537f13d7556f60efb202b0895712e8ad7d.tar.bz2
* linux-fork.c (linux_fork_detach): New.
* linux-fork.h (linux_fork_detach): Declare. * linux-nat.c (linux_child_follow_fork): When following the fork child, add the child inferior before possibly detaching from the parent. Don't reinstall ourselves. (linux_nat_detach): Call linux_fork_detach if there are other forks to debug. * linux-thread-db.c (thread_db_detach): Don't call target_mourn_inferior. Instead inline the necessary bits. * inf-ptrace.c (inf_ptrace_detach): Don't unpush the target if there are other inferiors to debug.
Diffstat (limited to 'gdb/inf-ptrace.c')
-rw-r--r--gdb/inf-ptrace.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/gdb/inf-ptrace.c b/gdb/inf-ptrace.c
index 8a34db7..8ae1161 100644
--- a/gdb/inf-ptrace.c
+++ b/gdb/inf-ptrace.c
@@ -309,7 +309,9 @@ inf_ptrace_detach (struct target_ops *ops, char *args, int from_tty)
inferior_ptid = null_ptid;
detach_inferior (pid);
- unpush_target (ops);
+
+ if (!have_inferiors ())
+ unpush_target (ops);
}
/* Kill the inferior. */