From 5709fedb94318ad8ab44c4689e43f74f7f452b66 Mon Sep 17 00:00:00 2001 From: Jean Pierre Cimalando Date: Tue, 24 Nov 2020 08:29:20 +0100 Subject: [PATCH] Fix a bug which gets the worker stuck on semaphore --- vst/SfizzVstProcessor.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/vst/SfizzVstProcessor.cpp b/vst/SfizzVstProcessor.cpp index 93969467..77de7c43 100644 --- a/vst/SfizzVstProcessor.cpp +++ b/vst/SfizzVstProcessor.cpp @@ -558,8 +558,10 @@ void SfizzVstProcessor::receiveMessage(int delay, const char* path, const char* { uint8_t* oscTemp = _oscTemp.get(); uint32_t oscSize = sfizz_prepare_message(oscTemp, kOscTempSize, path, sig, args); - if (oscSize <= kOscTempSize) - writeWorkerMessage("ReceiveMessage", oscTemp, oscSize); + if (oscSize <= kOscTempSize) { + if (writeWorkerMessage("ReceiveMessage", oscTemp, oscSize)) + _semaToWorker.post(); + } } void SfizzVstProcessor::loadSfzFileOrDefault(sfz::Sfizz& synth, const std::string& filePath)