From c0a752d2864872023216005375a6a1973fadeffe Mon Sep 17 00:00:00 2001 From: Lionel Elie Mamane Date: Tue, 9 Oct 2012 03:17:49 +0200 Subject: dix: fix Ungrab action #55785 UngrabAllDevices(Bool kill_client): If we are not going to kill the client (kill_clients false), we need to deactivate grabs of active clients, too. (If we are going to kill the client, no need to deactivate the grab, as this will be done as part of the client kill.) Fixes: X.Org Bug 55785 Signed-off-by: Lionel Elie Mamane Reviewed-by: Peter Hutterer Signed-off-by: Peter Hutterer --- dix/grabs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'dix') diff --git a/dix/grabs.c b/dix/grabs.c index 55bf64f2c..fe7967415 100644 --- a/dix/grabs.c +++ b/dix/grabs.c @@ -179,7 +179,7 @@ UngrabAllDevices(Bool kill_client) continue; PrintDeviceGrabInfo(dev); client = clients[CLIENT_ID(dev->deviceGrab.grab->resource)]; - if (!client || client->clientGone) + if (!kill_client || !client || client->clientGone) dev->deviceGrab.DeactivateGrab(dev); if (kill_client) CloseDownClient(client); -- cgit v1.2.3