aboutsummaryrefslogtreecommitdiff
path: root/gdb/linux-nat.c
diff options
context:
space:
mode:
authorJan Kratochvil <jan.kratochvil@redhat.com>2010-05-28 18:00:46 +0000
committerJan Kratochvil <jan.kratochvil@redhat.com>2010-05-28 18:00:46 +0000
commit1e225492405c82b0b7b9973d8f549e1411168e3d (patch)
tree1ee5cbe8fdf093a0104f49202a38edbdce5b7498 /gdb/linux-nat.c
parent3def43e060c89f10b775951cfec9ba963e5db481 (diff)
downloadgdb-1e225492405c82b0b7b9973d8f549e1411168e3d.zip
gdb-1e225492405c82b0b7b9973d8f549e1411168e3d.tar.gz
gdb-1e225492405c82b0b7b9973d8f549e1411168e3d.tar.bz2
gdb/
* linux-nat.c (linux_nat_wait_1): Do not call linux_nat_core_of_thread_1 on TARGET_WAITKIND_EXITED or TARGET_WAITKIND_SIGNALLED.
Diffstat (limited to 'gdb/linux-nat.c')
-rw-r--r--gdb/linux-nat.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/gdb/linux-nat.c b/gdb/linux-nat.c
index 8180248..b0f79f1 100644
--- a/gdb/linux-nat.c
+++ b/gdb/linux-nat.c
@@ -3626,7 +3626,13 @@ retry:
fprintf_unfiltered (gdb_stdlog, "LLW: exit\n");
restore_child_signals_mask (&prev_mask);
- lp->core = linux_nat_core_of_thread_1 (lp->ptid);
+
+ if (ourstatus->kind == TARGET_WAITKIND_EXITED
+ || ourstatus->kind == TARGET_WAITKIND_SIGNALLED)
+ lp->core = -1;
+ else
+ lp->core = linux_nat_core_of_thread_1 (lp->ptid);
+
return lp->ptid;
}