aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/dix/selection.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2010-05-20 07:07:37 +0000
committermarha <marha@users.sourceforge.net>2010-05-20 07:07:37 +0000
commit3319741e6f9fc3232eb40462a261271b9af2dcb2 (patch)
treeffe7fbae59390aafa850dcdbd3ea48d2cb59bda0 /xorg-server/dix/selection.c
parent153f5cafa19da4e4c0cf21e9c909958359ed8ebd (diff)
downloadvcxsrv-3319741e6f9fc3232eb40462a261271b9af2dcb2.tar.gz
vcxsrv-3319741e6f9fc3232eb40462a261271b9af2dcb2.tar.bz2
vcxsrv-3319741e6f9fc3232eb40462a261271b9af2dcb2.zip
xserver git update 20/5/2010
Diffstat (limited to 'xorg-server/dix/selection.c')
-rw-r--r--xorg-server/dix/selection.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/xorg-server/dix/selection.c b/xorg-server/dix/selection.c
index 947fc8d18..8763a2d5a 100644
--- a/xorg-server/dix/selection.c
+++ b/xorg-server/dix/selection.c
@@ -189,8 +189,7 @@ ProcSetSelectionOwner(ClientPtr client)
event.u.selectionClear.time = time.milliseconds;
event.u.selectionClear.window = pSel->window;
event.u.selectionClear.atom = pSel->selection;
- TryClientEvents(pSel->client, NULL, &event, 1, NoEventMask,
- NoEventMask /* CantBeFiltered */, NullGrab);
+ WriteEventsToClient(pSel->client, 1, &event);
}
}
else if (rc == BadMatch)
@@ -296,9 +295,11 @@ ProcConvertSelection(ClientPtr client)
event.u.selectionRequest.selection = stuff->selection;
event.u.selectionRequest.target = stuff->target;
event.u.selectionRequest.property = stuff->property;
- if (TryClientEvents(pSel->client, NULL, &event, 1, NoEventMask,
- NoEventMask /* CantBeFiltered */, NullGrab))
+ if (pSel->client && pSel->client != serverClient && !pSel->client->clientGone)
+ {
+ WriteEventsToClient(pSel->client, 1, &event);
return Success;
+ }
}
event.u.u.type = SelectionNotify;
@@ -307,7 +308,6 @@ ProcConvertSelection(ClientPtr client)
event.u.selectionNotify.selection = stuff->selection;
event.u.selectionNotify.target = stuff->target;
event.u.selectionNotify.property = None;
- TryClientEvents(client, NULL, &event, 1, NoEventMask,
- NoEventMask /* CantBeFiltered */, NullGrab);
+ WriteEventsToClient(client, 1, &event);
return Success;
}