diff --git a/Application/src/tracker/VideoOpener.cpp b/Application/src/tracker/VideoOpener.cpp index 8f97849e779ab5317781d1a96a6677836e1e2b29..807031e3c732d73fb84bb914f8ae6505a20e6d30 100644 --- a/Application/src/tracker/VideoOpener.cpp +++ b/Application/src/tracker/VideoOpener.cpp @@ -212,6 +212,10 @@ VideoOpener::VideoOpener() { return false; }); + _file_chooser->set_on_open([this](auto){ + _buffer = nullptr; + }); + _file_chooser->open(); } diff --git a/Application/src/tracker/main.cpp b/Application/src/tracker/main.cpp index 04175cc199d47da20c8c39cd6cee431119404788..d66f8a7ba89252a6eac04af43540e1697932a498 100644 --- a/Application/src/tracker/main.cpp +++ b/Application/src/tracker/main.cpp @@ -542,8 +542,12 @@ int main(int argc, char** argv) #endif auto exec = wd.str() + " " + opening_result.cmd; Debug("Executing '%S'", &exec); - file::exec(exec.c_str()); - exit(0); + auto pid = fork(); + if(pid == 0) { + file::exec(exec.c_str()); + exit(0); + } + return 0; } } else SETTING(filename) = file::Path();