diff --git a/Core/DebugBreakHelper.h b/Core/DebugBreakHelper.h index 1d82f27..c7f012c 100644 --- a/Core/DebugBreakHelper.h +++ b/Core/DebugBreakHelper.h @@ -19,7 +19,7 @@ public: if(!_isEmulationThread) { //Only attempt to break if this is done in a thread other than the main emulation thread - debugger->BreakRequest(true); + debugger->BreakRequest(false); if(!debugger->IsExecutionStopped()) { while(!debugger->IsExecutionStopped()) {} _needResume = true; @@ -30,7 +30,7 @@ public: ~DebugBreakHelper() { if(!_isEmulationThread) { - _debugger->BreakRequest(false); + _debugger->BreakRequest(true); } } }; \ No newline at end of file diff --git a/Core/Debugger.cpp b/Core/Debugger.cpp index 3cadd30..6c488dc 100644 --- a/Core/Debugger.cpp +++ b/Core/Debugger.cpp @@ -324,7 +324,7 @@ void Debugger::SleepUntilResume(BreakSource source, MemoryOperationInfo *operati _executionStopped = true; - if(_cpuStepCount == 0 && _breakRequestCount == 0) { + if(_cpuStepCount == 0) { //Only trigger code break event if the pause was caused by user action BreakEvent evt = {}; evt.BreakpointId = breakpointId;