discomfitor pushed a commit to branch master. http://git.enlightenment.org/core/efl.git/commit/?id=49302010f41ae841dd2e41881cf201da8b0efe37
commit 49302010f41ae841dd2e41881cf201da8b0efe37 Author: Mike Blumenkrantz <zm...@osg.samsung.com> Date: Mon Apr 25 16:14:02 2016 -0400 ecore-wl2: preserve data selection source after receiving the selection this is copied from weston, except all the code which is supposed to be of struct type "offer" has been renamed "source" and then reused in the same way that weston uses "offer" in order to maximize reader confusion deleting the source here is invalid since the selection only changes in the corresponding callback from the wayland interface --- src/lib/ecore_wl2/ecore_wl2_dnd.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/lib/ecore_wl2/ecore_wl2_dnd.c b/src/lib/ecore_wl2/ecore_wl2_dnd.c index 4762621..2e4765c 100644 --- a/src/lib/ecore_wl2/ecore_wl2_dnd.c +++ b/src/lib/ecore_wl2/ecore_wl2_dnd.c @@ -240,9 +240,10 @@ _selection_data_read(void *data, Ecore_Fd_Handler *fdh) WL_DATA_OFFER_FINISH_SINCE_VERSION) wl_data_offer_finish(source->offer); } - if (source->input->selection.source == source) - source->input->selection.source = NULL; - _ecore_wl2_dnd_del(source); + close(ecore_main_fd_handler_fd_get(source->fdh)); + ecore_main_fd_handler_del(source->fdh); + source->fdh = NULL; + event->done = EINA_TRUE; event->data = NULL; event->len = 0; --