From b2aa07d29f2bf1a292771a5e802742937ec83b0f Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Wed, 5 Sep 2018 19:37:55 +0530 Subject: [PATCH] Wayland: Fix missing data source canceled listener --- glfw/wl_window.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/glfw/wl_window.c b/glfw/wl_window.c index 5bb0b1520..35b3945cf 100644 --- a/glfw/wl_window.c +++ b/glfw/wl_window.c @@ -1512,8 +1512,15 @@ static const char* _glfwReceiveClipboardText(struct wl_data_offer *data_offer, c #undef bail } +static void data_source_canceled(void *data, struct wl_data_source *wl_data_source) { + if (_glfw.wl.dataSourceForClipboard == wl_data_source) + _glfw.wl.dataSourceForClipboard = NULL; + wl_data_source_destroy(wl_data_source); +} + const static struct wl_data_source_listener data_source_listener = { .send = _glfwSendClipboardText, + .cancelled = data_source_canceled, }; static void prune_unclaimed_data_offers() {