summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMarcel Hollerbach <marcel-hollerbach@t-online.de>2016-07-25 19:49:55 +0200
committerMarcel Hollerbach <marcel-hollerbach@t-online.de>2016-08-03 11:35:47 +0200
commit180abefc0c2cd8e094a508589493bc5883589518 (patch)
tree23688a3cf09a69ec127ed3ee6009f1f0513ec27e
parent82c6bdf031eb50ef444a95ca7fe48a8146ccce43 (diff)
downloadenlightenment-180abefc0c2cd8e094a508589493bc5883589518.tar.gz
e_comp_wl: destroy e_drag when source disappears
Otherwise we are expecting a running dnd later, and accessing invalid memory.
-rw-r--r--src/bin/e_comp_wl_data.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/bin/e_comp_wl_data.c b/src/bin/e_comp_wl_data.c
index 04ccd32c58..0ea274cb5b 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);
}