summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2013-02-13 10:49:23 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2013-07-17 14:35:25 +1000
commit87e027726f2d9223ce2fef2e4d26c18ae680a05e (patch)
tree299c22a0122df060358b39da1dcde9b0e07df4b0
parent34f5ca3a70e966d6fe232179a47c3dc660773ad5 (diff)
Xi: not having an ownership mask does not mean automatic acceptance
If we only have a single touch-grabbing client, setting the client as owner would clean up the touch once the TouchEnd was processed. If the client then calls XIAllowTouches() it will receive a BadValue for the touch ID (since the internal record is already cleaned up). Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit 9cc45c18ad1511adf3fb163dd4cefbef106edb23)
-rw-r--r--Xi/exevents.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/Xi/exevents.c b/Xi/exevents.c
index 77c705f7a..9a7c1cba5 100644
--- a/Xi/exevents.c
+++ b/Xi/exevents.c
@@ -1867,7 +1867,7 @@ DeliverTouchBeginEvent(DeviceIntPtr dev, TouchPointInfoPtr ti,
if (has_ownershipmask)
TouchSendOwnershipEvent(dev, ti, 0, listener->listener);
- if (!has_ownershipmask || listener->type == LISTENER_REGULAR)
+ if (listener->type == LISTENER_REGULAR)
state = LISTENER_HAS_ACCEPTED;
else
state = LISTENER_IS_OWNER;