From 6663cbe68e7211337488d534bac82592b996bec6 Mon Sep 17 00:00:00 2001 From: Ulrich Sibiller Date: Thu, 8 Aug 2019 22:55:52 +0200 Subject: Clipboard.c: fix nested clipboard handling Fixes ArcticaProject/nx-libs#632 --- nx-X11/programs/Xserver/hw/nxagent/Clipboard.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'nx-X11/programs/Xserver/hw') diff --git a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c index 400b966a6..e17ecef2c 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c @@ -1895,7 +1895,14 @@ int nxagentSendNotify(xEvent *event) fprintf(stderr, "%s: lastServerRequestor is [0x%x].\n", __func__, lastServerRequestor); #endif - if (event->u.selectionNotify.property == clientCutProperty) + /* + * If we have nested sessions there are situations where we do not + * need to send out anything to the real X server because + * communication happens completely between our own clients (some of + * which can be nxagents themselves). In that case we return 0 (tell + * dix to go on) and do nothing! + */ + if (event->u.selectionNotify.property == clientCutProperty && lastServerRequestor != None) { /* -- cgit v1.2.3