diff --git a/Source/Plugins/Plugin_DSP_LLE-testing/Src/gdsp_interpreter.cpp b/Source/Plugins/Plugin_DSP_LLE-testing/Src/gdsp_interpreter.cpp index 91e10325e8..d45f181671 100644 --- a/Source/Plugins/Plugin_DSP_LLE-testing/Src/gdsp_interpreter.cpp +++ b/Source/Plugins/Plugin_DSP_LLE-testing/Src/gdsp_interpreter.cpp @@ -312,6 +312,9 @@ bool gdsp_run() while (!CR_HALT) { gdsp_step(); + + if(!gdsp_running) + break; } gdsp_running = false; diff --git a/Source/Plugins/Plugin_DSP_LLE-testing/Src/main.cpp b/Source/Plugins/Plugin_DSP_LLE-testing/Src/main.cpp index 31dc509f62..1a7b279f48 100644 --- a/Source/Plugins/Plugin_DSP_LLE-testing/Src/main.cpp +++ b/Source/Plugins/Plugin_DSP_LLE-testing/Src/main.cpp @@ -258,14 +258,14 @@ void Initialize(void *init) void DSP_StopSoundStream() { + gdsp_stop(); + bIsRunning = false; delete g_hDSPThread; g_hDSPThread = NULL; } void Shutdown(void) { - bIsRunning = false; - gdsp_stop(); AudioCommon::ShutdownSoundStream(); }