diff options
author | Lionel Elie Mamane <lionel@mamane.lu> | 2012-10-09 03:17:49 +0200 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2012-10-19 13:12:33 +1000 |
commit | c0a752d2864872023216005375a6a1973fadeffe (patch) | |
tree | 872d57852477a3157049529d32e15f456cb5f5b0 /dix | |
parent | 3b67cd26149eb991b5f015061a818af65369e668 (diff) |
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 <http://bugs.freedesktop.org/show_bug.cgi?id=55785>
Signed-off-by: Lionel Elie Mamane <lionel@mamane.lu>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'dix')
-rw-r--r-- | dix/grabs.c | 2 |
1 files changed, 1 insertions, 1 deletions
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); |