make_cleanup_restore_current_thread: Look up thread earlier
The unconditional is_stopped call already asserts that the thread exists. gdb/ChangeLog: 2017-05-04 Pedro Alves <palves@redhat.com> * thread.c (make_cleanup_restore_current_thread): Move find_thread_ptid call before the is_stopped call. Assert that the thread is found. Replace is_stopped call by checking the thread's state directly. Remove unnecessary NULL-thread check.
This commit is contained in:
parent
3c3ae77e68
commit
f6223dbb50
|
@ -1,3 +1,10 @@
|
|||
2017-05-04 Pedro Alves <palves@redhat.com>
|
||||
|
||||
* thread.c (make_cleanup_restore_current_thread): Move
|
||||
find_thread_ptid call before the is_stopped call. Assert that the
|
||||
thread is found. Replace is_stopped call by checking the thread's
|
||||
state directly. Remove unnecessary NULL-thread check.
|
||||
|
||||
2017-05-04 Pedro Alves <palves@redhat.com>
|
||||
|
||||
* corelow.c (thread_section_name): New class.
|
||||
|
|
10
gdb/thread.c
10
gdb/thread.c
|
@ -1626,9 +1626,12 @@ make_cleanup_restore_current_thread (void)
|
|||
|
||||
if (inferior_ptid != null_ptid)
|
||||
{
|
||||
thread_info *tp = find_thread_ptid (inferior_ptid);
|
||||
struct frame_info *frame;
|
||||
|
||||
old->was_stopped = is_stopped (inferior_ptid);
|
||||
gdb_assert (tp != NULL);
|
||||
|
||||
old->was_stopped = tp->state == THREAD_STOPPED;
|
||||
if (old->was_stopped
|
||||
&& target_has_registers
|
||||
&& target_has_stack
|
||||
|
@ -1647,10 +1650,7 @@ make_cleanup_restore_current_thread (void)
|
|||
old->selected_frame_id = get_frame_id (frame);
|
||||
old->selected_frame_level = frame_relative_level (frame);
|
||||
|
||||
struct thread_info *tp = find_thread_ptid (inferior_ptid);
|
||||
|
||||
if (tp)
|
||||
tp->incref ();
|
||||
tp->incref ();
|
||||
old->thread = tp;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue