From d279b35086a92f53bce4ba9fe26e20aa84164b54 Mon Sep 17 00:00:00 2001 From: WarmUpTill Date: Mon, 2 Nov 2020 18:38:26 +0100 Subject: [PATCH] fix crash on importing scene sequence This crash could occur when a scene sequence was currently in progress and the entries were changed while in the 'wait for ...' state. --- src/switch-sequence.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/switch-sequence.cpp b/src/switch-sequence.cpp index b05e21a4..d49e0416 100644 --- a/src/switch-sequence.cpp +++ b/src/switch-sequence.cpp @@ -99,8 +99,6 @@ void AdvSceneSwitcher::on_sceneSequenceSave_clicked() void AdvSceneSwitcher::on_sceneSequenceLoad_clicked() { - std::lock_guard lock(switcher->m); - QString directory = QFileDialog::getOpenFileName( this, tr("Select a file to read Scene Sequence from ..."), QDir::currentPath(), tr("Text files (*.txt)")); @@ -121,7 +119,14 @@ void AdvSceneSwitcher::on_sceneSequenceLoad_clicked() Msgbox.exec(); return; } + bool wasRunning = !switcher->stop; + switcher->Stop(); + switcher->loadSceneSequenceSwitches(obj); + + if (wasRunning) + switcher->Start(); + obs_data_release(obj); QMessageBox Msgbox;