From 5be9505ab387315585e407af9fb9a589ece6d688 Mon Sep 17 00:00:00 2001 From: Silent Date: Fri, 22 Nov 2019 22:41:11 +0100 Subject: [PATCH] Signal DSP thread after unlocking DSP mutex --- Source/Core/Core/HW/DSPLLE/DSPLLE.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Source/Core/Core/HW/DSPLLE/DSPLLE.cpp b/Source/Core/Core/HW/DSPLLE/DSPLLE.cpp index dc0f463fba..fed94099bc 100644 --- a/Source/Core/Core/HW/DSPLLE/DSPLLE.cpp +++ b/Source/Core/Core/HW/DSPLLE/DSPLLE.cpp @@ -336,8 +336,16 @@ u32 DSPLLE::DSP_UpdateRate() void DSPLLE::PauseAndLock(bool do_lock, bool unpause_on_unlock) { if (do_lock) + { m_dsp_thread_mutex.lock(); + } else + { m_dsp_thread_mutex.unlock(); + + // Signal the DSP thread so it can perform any outstanding work now (if any) + s_ppc_event.Wait(); + s_dsp_event.Set(); + } } } // namespace DSP::LLE