From ca571e3fdce42ba16e6dcf3e57b4f151f65aa0dd Mon Sep 17 00:00:00 2001 From: falkTX Date: Fri, 18 Nov 2022 21:52:23 +0000 Subject: [PATCH] Use RecursiveMutex for CLAP UI events Signed-off-by: falkTX --- distrho/src/DistrhoPluginCLAP.cpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/distrho/src/DistrhoPluginCLAP.cpp b/distrho/src/DistrhoPluginCLAP.cpp index bf39a202..1ed26ca3 100644 --- a/distrho/src/DistrhoPluginCLAP.cpp +++ b/distrho/src/DistrhoPluginCLAP.cpp @@ -89,7 +89,7 @@ struct ClapEventQueue }; struct Queue { - Mutex lock; + RecursiveMutex lock; uint allocated; uint used; Event* events; @@ -106,7 +106,7 @@ struct ClapEventQueue void addEventFromUI(const Event& event) { - const MutexLocker cml(lock); + const RecursiveMutexLocker crml(lock); if (events == nullptr) { @@ -827,9 +827,9 @@ public: #if DISTRHO_PLUGIN_HAS_UI if (const clap_output_events_t* const outputEvents = process->out_events) { - const MutexTryLocker cmtl(fEventQueue.lock); + const RecursiveMutexTryLocker crmtl(fEventQueue.lock); - if (cmtl.wasLocked()) + if (crmtl.wasLocked()) { // reuse the same struct for gesture and parameters, they are compatible up to where it matters clap_event_param_value_t clapEvent = {