diff --git a/src-interface/processing.cpp b/src-interface/processing.cpp index e8b228401..f163eec7f 100644 --- a/src-interface/processing.cpp +++ b/src-interface/processing.cpp @@ -36,6 +36,10 @@ namespace satdump // Get pipeline std::optional pipeline = getPipelineFromName(downlink_pipeline); + ui_call_list_mutex->lock(); + ui_call_list->clear(); + ui_call_list_mutex->unlock(); + if (pipeline.has_value()) { try @@ -47,6 +51,7 @@ namespace satdump logger->error("Fatal error running pipeline : " + std::string(e.what())); error::set_error("Pipeline Error", e.what()); is_processing = false; + processing_mutex.unlock(); return; } } @@ -65,6 +70,7 @@ namespace satdump viewer_app->loadDatasetInViewer(output_file + "/dataset.json"); } } + processing_mutex.unlock(); }