Pārlūkot izejas kodu

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 gadi atpakaļ
vecāks
revīzija
42323ea31b
1 mainītis faili ar 5 papildinājumiem un 3 dzēšanām
  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)
 	if (usingPreviewProgram && sceneDuplicationMode && !direct)
@@ -1164,7 +1166,7 @@ void OBSBasic::SetPreviewProgramMode(bool enabled)
 		if (!actualProgramScene)
 		if (!actualProgramScene)
 			actualProgramScene = GetCurrentSceneSource();
 			actualProgramScene = GetCurrentSceneSource();
 		else
 		else
-			SetCurrentScene(actualProgramScene);
+			SetCurrentScene(actualProgramScene, true);
 		TransitionToScene(actualProgramScene, true);
 		TransitionToScene(actualProgramScene, true);
 
 
 		delete programOptions;
 		delete programOptions;