diff options
Diffstat (limited to 'gdb/windows-nat.c')
-rw-r--r-- | gdb/windows-nat.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/gdb/windows-nat.c b/gdb/windows-nat.c index bba8468..3b01f50 100644 --- a/gdb/windows-nat.c +++ b/gdb/windows-nat.c @@ -1349,6 +1349,7 @@ windows_per_inferior::continue_one_thread (windows_thread_info *th, } } th->resume (); + th->last_sig = GDB_SIGNAL_0; } /* Resume thread specified by ID, or all artificially suspended @@ -1449,7 +1450,7 @@ windows_nat_target::resume (ptid_t ptid, int step, enum gdb_signal sig) DEBUG_EXCEPT ("Cannot continue with signal %d here. " "Not stopped for EXCEPTION_DEBUG_EVENT", sig); } - else if (sig == windows_process.last_sig) + else if (sig == th->last_sig) continue_status = DBG_EXCEPTION_NOT_HANDLED; else #if 0 @@ -1473,11 +1474,9 @@ windows_nat_target::resume (ptid_t ptid, int step, enum gdb_signal sig) } #endif DEBUG_EXCEPT ("Can only continue with received signal %d.", - windows_process.last_sig); + th->last_sig); } - windows_process.last_sig = GDB_SIGNAL_0; - #ifdef __x86_64__ if (windows_process.wow64_process) { @@ -1590,8 +1589,6 @@ windows_nat_target::get_windows_debug_event } } - windows_process.last_sig = GDB_SIGNAL_0; - if ((options & TARGET_WNOHANG) != 0 && !m_debug_event_pending) { ourstatus->set_ignore (); @@ -1910,7 +1907,6 @@ windows_nat_target::do_initial_windows_stuff (DWORD pid, bool attaching) { struct inferior *inf; - windows_process.last_sig = GDB_SIGNAL_0; windows_process.open_process_used = 0; #ifdef __CYGWIN__ windows_process.cygwin_load_start = 0; |