From 2cdead81842f0a6af2a17ae9fe2bd01901ae1831 Mon Sep 17 00:00:00 2001 From: Daniel Zaoui Date: Mon, 4 Nov 2013 15:14:09 +0200 Subject: [PATCH] e_exec: fix application closing process. This is a fix to a bug that was happening on my laptop with libreoffice. When this last one was closed, a segfault was occurring. This was due to the use of a freed data structure. A pointer to this structure (instance) was still stored as data of the Ecore_Exe structure. Now, when the instance is freed, the data of the Ecore_Exe is set to NULL. --- src/bin/e_exec.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/bin/e_exec.c b/src/bin/e_exec.c index 5ea76f1c5..d3e21cc5f 100644 --- a/src/bin/e_exec.c +++ b/src/bin/e_exec.c @@ -659,6 +659,7 @@ _e_exec_instance_free(E_Exec_Instance *inst) EINA_LIST_FREE(inst->borders, bd) bd->exe_inst = NULL; if (inst->desktop) efreet_desktop_free(inst->desktop); + if (inst->exe) ecore_exe_data_set(inst->exe, NULL); free(inst); }