From d8e75c662b35c30eee050b322f67867f93338e84 Mon Sep 17 00:00:00 2001 From: paulfd Date: Sat, 28 Sep 2019 18:52:22 +0200 Subject: [PATCH] Protect the clear() function of the synth --- sfizz/Synth.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/sfizz/Synth.cpp b/sfizz/Synth.cpp index cc3c2b04..721f6b70 100644 --- a/sfizz/Synth.cpp +++ b/sfizz/Synth.cpp @@ -108,6 +108,11 @@ void sfz::Synth::buildRegion(const std::vector& regionOpcodes) void sfz::Synth::clear() { + AtomicDisabler callbackDisabler { canEnterCallback }; + while (inCallback) { + std::this_thread::sleep_for(1ms); + } + for (auto &voice: voices) voice->reset(); for (auto& list: noteActivationLists)