From 180abefc0c2cd8e094a508589493bc5883589518 Mon Sep 17 00:00:00 2001 From: Marcel Hollerbach Date: Mon, 25 Jul 2016 19:49:55 +0200 Subject: [PATCH] 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 04ccd32c5..0ea274cb5 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); }