Quellcode durchsuchen

UI: Soft-delete scene collections

Instead of actually removing the file, simply rename it to the .bak
version which OBS ignores in most cases. That allows users to recover
accidentally deleted collections more easily, while only taking up a
few kilobytes of disk space at most.
derrod vor 2 Jahren
Ursprung
Commit
ad5f04e53d
1 geänderte Dateien mit 2 neuen und 5 gelöschten Zeilen
  1. 2 5
      UI/window-basic-main-scene-collections.cpp

+ 2 - 5
UI/window-basic-main-scene-collections.cpp

@@ -343,11 +343,8 @@ void OBSBasic::on_actionRemoveSceneCollection_triggered()
 		api->on_event(OBS_FRONTEND_EVENT_SCENE_COLLECTION_CHANGING);
 
 	oldFile.insert(0, path);
-	oldFile += ".json";
-
-	os_unlink(oldFile.c_str());
-	oldFile += ".bak";
-	os_unlink(oldFile.c_str());
+	/* os_rename() overwrites if necessary, only the .bak file will remain. */
+	os_rename((oldFile + ".json").c_str(), (oldFile + ".json.bak").c_str());
 
 	Load(newPath.c_str());
 	RefreshSceneCollections();