diff options
author | Marcel Hollerbach <marcel-hollerbach@t-online.de> | 2016-07-25 19:49:55 +0200 |
---|---|---|
committer | Marcel Hollerbach <marcel-hollerbach@t-online.de> | 2016-08-03 11:35:47 +0200 |
commit | 180abefc0c2cd8e094a508589493bc5883589518 (patch) | |
tree | 23688a3cf09a69ec127ed3ee6009f1f0513ec27e | |
parent | 82c6bdf031eb50ef444a95ca7fe48a8146ccce43 (diff) | |
download | enlightenment-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.c | 7 |
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); } |