diff --git a/Source/Core/VideoCommon/Fifo.cpp b/Source/Core/VideoCommon/Fifo.cpp index 8e14e58b353f..504a274157ff 100644 --- a/Source/Core/VideoCommon/Fifo.cpp +++ b/Source/Core/VideoCommon/Fifo.cpp @@ -154,7 +154,10 @@ void ExitGpuLoop() void EmulatorState(bool running) { s_emu_running_state.store(running); - s_gpu_mainloop.Wakeup(); + if (running) + s_gpu_mainloop.Wakeup(); + else + s_gpu_mainloop.AllowSleep(); } void SyncGPU(SyncGPUReason reason, bool may_move_read_ptr)