* 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.
This commit is contained in:
Doug Evans 2009-03-27 02:44:51 +00:00
parent d34b50065a
commit 88fc996f58
5 changed files with 173 additions and 4 deletions

View file

@ -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. */