bu5hm4n pushed a commit to branch master.

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

commit 180abefc0c2cd8e094a508589493bc5883589518
Author: Marcel Hollerbach <marcel-hollerb...@t-online.de>
Date:   Mon Jul 25 19:49:55 2016 +0200

    e_comp_wl: destroy e_drag when source disappears
    
    Otherwise we are expecting a running dnd later, and accessing invalid
    memory.
---
 src/bin/e_comp_wl_data.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/bin/e_comp_wl_data.c b/src/bin/e_comp_wl_data.c
index 04ccd32..0ea274c 100644
--- a/src/bin/e_comp_wl_data.c
+++ b/src/bin/e_comp_wl_data.c
@@ -375,7 +375,12 @@ _e_comp_wl_data_source_cb_resource_destroy(struct 
wl_resource *resource)
    _mime_types_free(source);
 
    if (e_comp_wl->drag_source == source)
-     e_comp_wl->drag_source = NULL;
+     {
+        e_comp_wl->drag_source = NULL;
+        //free the drag here
+        e_object_del(E_OBJECT(e_comp_wl->drag));
+        e_comp_wl->drag = NULL;
+     }
 
    free(source);
 }

-- 


Reply via email to