jpeg pushed a commit to branch efl-1.20.

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

commit b9ad278737c0988cab76db4914e246a17783cbbf
Author: Jean-Philippe Andre <jp.an...@samsung.com>
Date:   Tue Sep 26 15:00:53 2017 +0900

    win: Avoid calling same function twice on shutdown
    
    This avoids calling:
      ecore_evas_callback_delete_request_set
      ecore_evas_callback_resize_set
    twice when deleting a window. Also adds safety over sd->ee.
---
 src/lib/elementary/efl_ui_win.c | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/src/lib/elementary/efl_ui_win.c b/src/lib/elementary/efl_ui_win.c
index dd9f1114ca..e608e4ee6c 100644
--- a/src/lib/elementary/efl_ui_win.c
+++ b/src/lib/elementary/efl_ui_win.c
@@ -2894,14 +2894,15 @@ _efl_ui_win_efl_canvas_group_group_del(Eo *obj, 
Efl_Ui_Win_Data *sd)
    sd->wm_rot.rots = NULL;
 
    /* Don't let callback in the air that point to sd */
-   ecore_evas_callback_delete_request_set(sd->ee, NULL);
-   ecore_evas_callback_resize_set(sd->ee, NULL);
-   ecore_evas_callback_mouse_in_set(sd->ee, NULL);
-   ecore_evas_callback_focus_in_set(sd->ee, NULL);
-   ecore_evas_callback_focus_out_set(sd->ee, NULL);
-   ecore_evas_callback_move_set(sd->ee, NULL);
-   ecore_evas_callback_state_change_set(sd->ee, NULL);
-   ecore_evas_callback_pre_render_set(sd->ee, NULL);
+   if (sd->ee)
+     {
+        ecore_evas_callback_mouse_in_set(sd->ee, NULL);
+        ecore_evas_callback_focus_in_set(sd->ee, NULL);
+        ecore_evas_callback_focus_out_set(sd->ee, NULL);
+        ecore_evas_callback_move_set(sd->ee, NULL);
+        ecore_evas_callback_state_change_set(sd->ee, NULL);
+        ecore_evas_callback_pre_render_set(sd->ee, NULL);
+     }
 
    efl_canvas_group_del(efl_super(obj, MY_CLASS));
 

-- 


Reply via email to