Răsfoiți Sursa

UI: Fix scene override when switching off studio mode

The scene override would trigger, but the scene override variable would
stay set, causing the next transition to be the same one that was
previously used for overriding.
jp9000 8 ani în urmă
părinte
comite
42323ea31b
1 a modificat fișierele cu 5 adăugiri și 3 ștergeri
  1. 5 3
      UI/window-basic-main-transitions.cpp

+ 5 - 3
UI/window-basic-main-transitions.cpp

@@ -335,8 +335,10 @@ void OBSBasic::TransitionToScene(OBSSource source, bool force, bool direct,
 			}
 		}
 
-		obs_transition_start(transition, OBS_TRANSITION_MODE_AUTO,
-				duration, source);
+		bool success = obs_transition_start(transition,
+				OBS_TRANSITION_MODE_AUTO, duration, source);
+		if (!success)
+			TransitionFullyStopped();
 	}
 
 	if (usingPreviewProgram && sceneDuplicationMode && !direct)
@@ -1164,7 +1166,7 @@ void OBSBasic::SetPreviewProgramMode(bool enabled)
 		if (!actualProgramScene)
 			actualProgramScene = GetCurrentSceneSource();
 		else
-			SetCurrentScene(actualProgramScene);
+			SetCurrentScene(actualProgramScene, true);
 		TransitionToScene(actualProgramScene, true);
 
 		delete programOptions;