mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-18 23:03:29 +08:00
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
@ -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…
Reference in New Issue
Block a user