cedric pushed a commit to branch enlightenment-0.17.

http://git.enlightenment.org/core/enlightenment.git/commit/?id=b7f3fcb205a9ccf152a13d5cc052f4162eba3741

commit b7f3fcb205a9ccf152a13d5cc052f4162eba3741
Author: Daniel Zaoui <daniel.za...@samsung.com>
Date:   Mon Nov 4 15:14:09 2013 +0200

    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 c9f4780..2ae8a04 100644
--- a/src/bin/e_exec.c
+++ b/src/bin/e_exec.c
@@ -556,6 +556,7 @@ _e_exec_instance_free(E_Exec_Instance *inst)
                                              inst->desktop);
    if (inst->expire_timer) ecore_timer_del(inst->expire_timer);
    if (inst->desktop) efreet_desktop_free(inst->desktop);
+   if (inst->exe) ecore_exe_data_set(inst->exe, NULL);
    free(inst);
 }
 /*

-- 


Reply via email to