Skip to content

Commit 5361a89

Browse files
Fixes crash when merging scene collections multiple times.
1 parent c703292 commit 5361a89

File tree

2 files changed

+14
-11
lines changed

2 files changed

+14
-11
lines changed

src/scene-bundle.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -240,7 +240,7 @@ bool SceneBundle::MergeCollection(std::string collection_name,
240240
sceneName = newName;
241241
}
242242
}
243-
replace_all(collectionData, name, newName);
243+
replace_all(collectionData, "\"" + name + "\"", "\"" + newName + "\"");
244244
}
245245

246246
std::string needle = "{FILE}:";

src/setup-wizard.cpp

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1227,13 +1227,17 @@ void StreamPackageSetupWizard::_buildMergeCollectionUI(std::map<std::string, std
12271227
});
12281228
_mergeCollectionSteps->addWidget(newName);
12291229

1230-
// Step 1- select scenes to merge
1230+
// Step 1- select scenes to merge (step index: 1)
12311231
auto mergeScenes = new MergeSelectScenes(outputScenes, steps, 2, _productName, _thumbnailPath, this);
12321232
_mergeCollectionSteps->addWidget(mergeScenes);
12331233
connect(mergeScenes, &MergeSelectScenes::proceedPressed, this,
1234-
[this, mergeScenes]() {
1235-
_vSetupMerge->EnableTempSources();
1236-
_mergeCollectionSteps->setCurrentIndex(2);
1234+
[this, mergeScenes, videoSourceLabels]() {
1235+
if (videoSourceLabels.size() > 0) {
1236+
_vSetupMerge->EnableTempSources();
1237+
_mergeCollectionSteps->setCurrentIndex(2);
1238+
} else {
1239+
_mergeCollectionSteps->setCurrentIndex(3);
1240+
}
12371241
_setup.scenesToMerge = mergeScenes->getSelectedScenes();
12381242
});
12391243

@@ -1242,7 +1246,7 @@ void StreamPackageSetupWizard::_buildMergeCollectionUI(std::map<std::string, std
12421246
_mergeCollectionSteps->setCurrentIndex(0);
12431247
});
12441248

1245-
// Step 2- Set up Video inputs (step index: 1)
1249+
// Step 2- Set up Video inputs (step index: 2)
12461250
_vSetupMerge = new VideoSetup(steps, 3, _productName, _thumbnailPath,
12471251
videoSourceLabels, this);
12481252
_vSetupMerge->DisableTempSources();
@@ -1259,7 +1263,7 @@ void StreamPackageSetupWizard::_buildMergeCollectionUI(std::map<std::string, std
12591263
_vSetupMerge->DisableTempSources();
12601264
});
12611265

1262-
// Step 2- Setup Audio Inputs (step index: 1)
1266+
// Step 2- Setup Audio Inputs (step index: 3)
12631267
auto aSetup = new AudioSetup(steps, 4, _productName, _thumbnailPath, this);
12641268
_mergeCollectionSteps->addWidget(aSetup);
12651269
connect(aSetup, &AudioSetup::proceedPressed, this,
@@ -1272,11 +1276,10 @@ void StreamPackageSetupWizard::_buildMergeCollectionUI(std::map<std::string, std
12721276
connect(aSetup, &AudioSetup::backPressed, this,
12731277
[this, videoSourceLabels]() {
12741278
if (videoSourceLabels.size() > 0) {
1275-
_mergeCollectionSteps->setCurrentIndex(4);
1279+
_mergeCollectionSteps->setCurrentIndex(2);
12761280
_vSetupMerge->EnableTempSources();
1277-
}
1278-
else {
1279-
_mergeCollectionSteps->setCurrentIndex(3);
1281+
} else {
1282+
_mergeCollectionSteps->setCurrentIndex(1);
12801283
}
12811284
});
12821285
_mergeCollectionSteps->setCurrentIndex(0);

0 commit comments

Comments
 (0)