raster pushed a commit to branch master.

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

commit d1f4f6c8aff30d9bc4730a161fa2b63c534233b9
Author: Carsten Haitzler (Rasterman) <ras...@rasterman.com>
Date:   Sat Apr 2 16:02:07 2016 +0900

    elm win - null  out freed data on smart del
    
    this fixes double-frees of strings in oddball cases where a deleted
    window that is not done deleting is accessed.
    
    @fix
---
 src/lib/elementary/elm_win.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/lib/elementary/elm_win.c b/src/lib/elementary/elm_win.c
index 00f9d1c..ae3e38c 100644
--- a/src/lib/elementary/elm_win.c
+++ b/src/lib/elementary/elm_win.c
@@ -1999,10 +1999,19 @@ _elm_win_evas_object_smart_del(Eo *obj, Elm_Win_Data 
*sd)
    evas_object_del(sd->icon);
    evas_object_del(sd->main_menu);
 
+   sd->focus_highlight.style = NULL;
+   sd->title = NULL;
+   sd->icon_name = NULL;
+   sd->role = NULL;
+   sd->name = NULL;
+   sd->icon = NULL;
+   sd->main_menu = NULL;
+
    _elm_win_profile_del(sd);
    _elm_win_available_profiles_del(sd);
 
    free(sd->wm_rot.rots);
+   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);

-- 


Reply via email to