diff --git a/src/macro-core/macro-action-scene-switch.cpp b/src/macro-core/macro-action-scene-switch.cpp index cc8d8048..31645882 100644 --- a/src/macro-core/macro-action-scene-switch.cpp +++ b/src/macro-core/macro-action-scene-switch.cpp @@ -31,7 +31,6 @@ void waitForTransitionChangeFixedDuration(int duration) auto time = std::chrono::high_resolution_clock::now() + std::chrono::milliseconds(duration); - switcher->abortMacroWait = false; std::unique_lock lock(switcher->m); while (!switcher->abortMacroWait) { if (switcher->macroTransitionCv.wait_until(lock, time) == @@ -107,6 +106,7 @@ bool MacroActionSwitchScene::PerformAction() const int expectedTransitionDuration = getExpectedTransitionDuration(scene, transition, _duration.seconds); + switcher->abortMacroWait = false; if (expectedTransitionDuration < 0) { waitForTransitionChange(transition); } else {