diff options
author | Doug Evans <dje@google.com> | 2009-03-27 02:44:51 +0000 |
---|---|---|
committer | Doug Evans <dje@google.com> | 2009-03-27 02:44:51 +0000 |
commit | 88fc996f5819bf526d17f6f273135943ac41ab38 (patch) | |
tree | 5673e8b38801dcca18d1b339e5db4b11fb805b6d /gdb/thread.c | |
parent | d34b50065a9298eabeaf74f2729faa66a865cccc (diff) | |
download | gdb-88fc996f5819bf526d17f6f273135943ac41ab38.zip gdb-88fc996f5819bf526d17f6f273135943ac41ab38.tar.gz gdb-88fc996f5819bf526d17f6f273135943ac41ab38.tar.bz2 |
* thread.c (do_restore_current_thread_cleanup): Redo test for
whether to restore old->inferior_ptid.
* gdb.mi/mi-nonstop-exit.exp: New file.
* gdb.mi/non-stop-exit.c: New file.
Diffstat (limited to 'gdb/thread.c')
-rw-r--r-- | gdb/thread.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/gdb/thread.c b/gdb/thread.c index 613137a..a1617f2 100644 --- a/gdb/thread.c +++ b/gdb/thread.c @@ -924,11 +924,10 @@ do_restore_current_thread_cleanup (void *arg) then don't revert back to it, but instead simply drop back to no thread selected. */ if (tp - && is_exited (tp->ptid) - && find_inferior_pid (ptid_get_pid (tp->ptid)) == NULL) - restore_current_thread (null_ptid); - else + && find_inferior_pid (ptid_get_pid (tp->ptid)) != NULL) restore_current_thread (old->inferior_ptid); + else + restore_current_thread (null_ptid); /* The running state of the originally selected thread may have changed, so we have to recheck it here. */ |