UI: Save invalid transition source data in safe mode

This commit is contained in:
derrod
2023-12-04 22:50:01 +01:00
committed by Lain
parent 6fc3bb4eb4
commit 32e201ebb9
2 changed files with 8 additions and 0 deletions
+7
View File
@@ -1779,6 +1779,10 @@ obs_data_array_t *OBSBasic::SaveTransitions()
obs_data_array_push_back(transitions, sourceData);
}
for (const OBSDataAutoRelease &transition : safeModeTransitions) {
obs_data_array_push_back(transitions, transition);
}
return transitions;
}
@@ -1787,6 +1791,7 @@ void OBSBasic::LoadTransitions(obs_data_array_t *transitions,
{
size_t count = obs_data_array_count(transitions);
safeModeTransitions.clear();
for (size_t i = 0; i < count; i++) {
OBSDataAutoRelease item = obs_data_array_item(transitions, i);
const char *name = obs_data_get_string(item, "name");
@@ -1806,6 +1811,8 @@ void OBSBasic::LoadTransitions(obs_data_array_t *transitions,
ui->transitions->count() - 1);
if (cb)
cb(private_data, source);
} else if (safe_mode || disable_3p_plugins) {
safeModeTransitions.push_back(std::move(item));
}
}
}
+1
View File
@@ -235,6 +235,7 @@ private:
QStringList oldExtraDockNames;
OBSDataAutoRelease safeModeModuleData;
std::vector<OBSDataAutoRelease> safeModeTransitions;
bool loaded = false;
long disableSaving = 1;