combiner.md

This commit is contained in:
JohannesItten
2026-07-09 15:49:35 +03:00
parent d2095d14d3
commit 3820d0eeb7
3 changed files with 167 additions and 7 deletions
+17 -6
View File
@@ -28,12 +28,23 @@ int main(int argc, char* argv[]) {
dmf::StudioManager manager(bin_dir, domain);
if (argc > 1) {
auto r = manager.load_graph_file(argv[1]);
if (r.value("type", "") == "error") {
fprintf(stderr, "[studio-manager] %s\n",
r.value("message", "load failed").c_str());
return 1;
{
bool clean = false;
const char* explicit_path = nullptr;
for (int i = 1; i < argc; ++i) {
if (std::string(argv[i]) == "--clean") clean = true;
else explicit_path = argv[i];
}
fs::path load_path = explicit_path ? fs::path(explicit_path) : bin_dir / "last_graph.json";
if (!clean && fs::exists(load_path)) {
fprintf(stderr, "[studio-manager] restoring graph from %s\n", load_path.c_str());
auto r = manager.load_graph_file(load_path.string());
if (r.value("type", "") == "error") {
fprintf(stderr, "[studio-manager] %s\n",
r.value("message", "load failed").c_str());
if (explicit_path) return 1; // explicit path failure is fatal; auto-restore is not
}
}
}