gdbserver/linux-low: replace direct assignment to current_thread
Use scoped_restore_current_thread and switch_to_thread in linux_process_target::wait_for_sigstop.
This commit is contained in:
parent
24583e45ef
commit
20ac1cdb8c
1 changed files with 5 additions and 2 deletions
|
@ -3826,6 +3826,8 @@ linux_process_target::wait_for_sigstop ()
|
|||
else
|
||||
saved_tid = null_ptid; /* avoid bogus unused warning */
|
||||
|
||||
scoped_restore_current_thread restore_thread;
|
||||
|
||||
if (debug_threads)
|
||||
debug_printf ("wait_for_sigstop: pulling events\n");
|
||||
|
||||
|
@ -3836,7 +3838,7 @@ linux_process_target::wait_for_sigstop ()
|
|||
gdb_assert (ret == -1);
|
||||
|
||||
if (saved_thread == NULL || mythread_alive (saved_tid))
|
||||
current_thread = saved_thread;
|
||||
return;
|
||||
else
|
||||
{
|
||||
if (debug_threads)
|
||||
|
@ -3845,7 +3847,8 @@ linux_process_target::wait_for_sigstop ()
|
|||
/* We can't change the current inferior behind GDB's back,
|
||||
otherwise, a subsequent command may apply to the wrong
|
||||
process. */
|
||||
current_thread = NULL;
|
||||
restore_thread.dont_restore ();
|
||||
switch_to_thread (nullptr);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue