浏览代码

UI: Fix crash when creating scene collections with "unsafe" names

Scene collection names that are not considered "safe" by OBS Studio
get a changed JSON file name with incompatible characters replaced.

The refactored scene collection implementation uses the Load function to
either activate an existing scene collection or create a new one if it
does not exist.

The Load function however overwrote the scene collection name set in
the profile with its own variant based off the "safe" file name, which
created a mismatch with the code that created the collection data
model.

As the Load function is only called by ActivateSceneCollection (which
itself already sets the name and filename for the collection), removal
of this superfluous code in the Load function also fixes the issue.
PatTheMav 1 年之前
父节点
当前提交
b4137fa65a
共有 1 个文件被更改,包括 0 次插入4 次删除
  1. 0 4
      UI/window-basic-main.cpp

+ 0 - 4
UI/window-basic-main.cpp

@@ -1246,10 +1246,6 @@ void OBSBasic::Load(const char *file, bool remigrate)
 			}
 			}
 		}
 		}
 
 
-		config_set_string(App()->GetUserConfig(), "Basic",
-				  "SceneCollection", name.c_str());
-		config_set_string(App()->GetUserConfig(), "Basic",
-				  "SceneCollectionFile", name.c_str());
 		blog(LOG_INFO, "No scene file found, creating default scene");
 		blog(LOG_INFO, "No scene file found, creating default scene");
 
 
 		bool hasFirstRun = config_get_bool(App()->GetUserConfig(),
 		bool hasFirstRun = config_get_bool(App()->GetUserConfig(),