diff --git a/src/advanced-scene-switcher.cpp b/src/advanced-scene-switcher.cpp index c793dc93..e0361165 100644 --- a/src/advanced-scene-switcher.cpp +++ b/src/advanced-scene-switcher.cpp @@ -330,7 +330,6 @@ void SwitcherData::Thread() int sleep = 0; while (true) { - startLoop: std::unique_lock lock(m); bool match = false; OBSWeakSource scene; @@ -393,10 +392,6 @@ void SwitcherData::Thread() case round_trip_func: checkSceneSequence(match, scene, transition, lock); - if (sceneChangedDuringWait()) //scene might have changed during the sleep - { - goto startLoop; - } break; case media_func: checkMediaSwitch(match, scene, transition); @@ -515,7 +510,6 @@ extern "C" void FreeSceneSwitcher() void handleSceneChange(SwitcherData *s) { - std::lock_guard lock(s->m); //stop waiting if scene was manually changed if (s->sceneChangedDuringWait()) s->cv.notify_one(); diff --git a/src/switch-sequence.cpp b/src/switch-sequence.cpp index 082cf988..b1f35934 100644 --- a/src/switch-sequence.cpp +++ b/src/switch-sequence.cpp @@ -183,7 +183,10 @@ void SwitcherData::checkSceneSequence(bool &match, OBSWeakSource &scene, transition = s.transition; if (verbose) s.logMatch(); + } else if (verbose) { + blog(LOG_INFO, "sequence canceled"); } + obs_source_release(currentSource2); break; }