diff --git a/CHANGES b/CHANGES index f513eb118..f856b9737 100644 --- a/CHANGES +++ b/CHANGES @@ -17,6 +17,7 @@ Bugfixes: - Video: Fix uncompressed PCM audio recording - GBA Video: Fix windows not disabling target 1 appropriately (fixes #161) - Debugger: Align PC-relative loads in Thumb + - Debugger: Fix watchpoints triggering too late Misc: - Qt: Disable sync to video by default - GBA: Exit cleanly on FATAL if the port supports it diff --git a/src/debugger/debugger.c b/src/debugger/debugger.c index a9e5bcdc4..f19d8c4bf 100644 --- a/src/debugger/debugger.c +++ b/src/debugger/debugger.c @@ -59,7 +59,11 @@ void ARMDebuggerRun(struct ARMDebugger* debugger) { debugger->state = DEBUGGER_RUNNING; } while (debugger->state < DEBUGGER_EXITING) { - if (!debugger->breakpoints) { + if (!debugger->breakpoints && !debugger->watchpoints) { + while (debugger->state == DEBUGGER_RUNNING) { + ARMRun(debugger->cpu); + } + } else if (!debugger->breakpoints) { while (debugger->state == DEBUGGER_RUNNING) { ARMRun(debugger->cpu); }