commit a1e49b6e2460766ee6e65114dfd3018197c5f5c3 parent ffc6587eb25b8610fc58009b93659e052a7d8394 Author: dsp56300 <dsp56300@users.noreply.github.com> Date: Sun, 12 May 2024 11:47:57 +0200 fix rare shutdown crash in integration tests Diffstat:
M | source/virusConsoleLib/consoleApp.cpp | | | 5 | +++++ |
1 file changed, 5 insertions(+), 0 deletions(-)
diff --git a/source/virusConsoleLib/consoleApp.cpp b/source/virusConsoleLib/consoleApp.cpp @@ -277,5 +277,10 @@ void ConsoleApp::run(const std::string& _audioOutputFilename, uint32_t _maxSampl midiEvents.clear(); } + // wait until DSP enters blocking state so that resetting the callback is safe + auto& audio = m_dsp1->getAudio(); + while(!audio.getAudioOutputs().full() && !audio.getAudioInputs().empty()) + std::this_thread::yield(); + esai.setCallback([&](dsp56k::Audio*){},0); }