From c5f62f02be9fd29eb3f8f7831ac98617752ea789 Mon Sep 17 00:00:00 2001 From: Thomas White Date: Thu, 1 Apr 2021 11:38:44 +0200 Subject: GUI: Clean up old tasks when infobar is removed --- src/gui_backend_local.c | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/gui_backend_local.c') diff --git a/src/gui_backend_local.c b/src/gui_backend_local.c index 96d6c6b3..545ac776 100644 --- a/src/gui_backend_local.c +++ b/src/gui_backend_local.c @@ -79,6 +79,14 @@ struct local_job }; +static void free_task(void *job_priv) +{ + struct local_job *job = job_priv; + g_object_unref(job->workdir); + free(job->stderr_filename); +} + + static void watch_subprocess(GPid pid, gint status, gpointer vp) { struct local_job *job = vp; @@ -677,6 +685,7 @@ int make_local_backend(struct crystfel_backend *be) be->friendly_name = "Local (run on this computer)"; be->cancel_task = cancel_task; + be->free_task = free_task; be->task_status = get_task_status; be->make_indexing_parameters_widget = make_indexing_parameters_widget; -- cgit v1.2.3