summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeremy Huddleston <jeremyhu@freedesktop.org>2009-10-27 18:00:48 -0700
committerJeremy Huddleston <jeremyhu@freedesktop.org>2009-11-04 11:34:28 -0800
commitade4636c7e9cb8f9a0b03168f47d5383af9cbdaf (patch)
tree90e6b03cc9971bc65233b188bb263335028144de
parentccbf949abb05111ad1ba3a359a621e9d7a1ffbf7 (diff)
dix: Properly detect if the other device is frozen
Signed-off-by: Jeremy Huddleston <jeremyhu@freedesktop.org> (cherry picked from commit 7897b6c2d41bccb72c19418674c3526ecce29515)
-rw-r--r--dix/events.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/dix/events.c b/dix/events.c
index 1b40ba511..3e2326201 100644
--- a/dix/events.c
+++ b/dix/events.c
@@ -1673,7 +1673,7 @@ AllowSome(ClientPtr client,
thisGrabbed = grabinfo->grab && SameClient(grabinfo->grab, client);
thisSynced = FALSE;
otherGrabbed = FALSE;
- othersFrozen = TRUE;
+ othersFrozen = FALSE;
grabTime = grabinfo->grabTime;
for (dev = inputInfo.devices; dev; dev = dev->next)
{
@@ -1689,11 +1689,9 @@ AllowSome(ClientPtr client,
otherGrabbed = TRUE;
if (grabinfo->sync.other == devgrabinfo->grab)
thisSynced = TRUE;
- if (devgrabinfo->sync.state < FROZEN)
- othersFrozen = FALSE;
+ if (devgrabinfo->sync.state >= FROZEN)
+ othersFrozen = TRUE;
}
- else if (!devgrabinfo->sync.other || !SameClient(devgrabinfo->sync.other, client))
- othersFrozen = FALSE;
}
if (!((thisGrabbed && grabinfo->sync.state >= FROZEN) || thisSynced))
return;