From a3f11d2f6066d2120e84f0c33684943474aa8ae1 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Wed, 17 Oct 2012 14:13:29 +1000 Subject: Xi: don't deliver TouchEnd to a client waiting for TouchBegin (#55738) If a client is still waiting for the TouchBegin, don't deliver a TouchEnd event. X.Org Bug 55738 Signed-off-by: Peter Hutterer Tested-by: Thomas Jaeger Reviewed-by: Keith Packard (cherry picked from commit 676447190190d8546165e21be242cf16dd69f5ae) --- Xi/exevents.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Xi/exevents.c b/Xi/exevents.c index 6ed499142..4cbeb3796 100644 --- a/Xi/exevents.c +++ b/Xi/exevents.c @@ -1862,6 +1862,11 @@ DeliverTouchEndEvent(DeviceIntPtr dev, TouchPointInfoPtr ti, InternalEvent *ev, goto out; } + if (listener->state == LISTENER_AWAITING_BEGIN) { + listener->state = LISTENER_HAS_END; + goto out; + } + /* Event in response to reject */ if (ev->device_event.flags & TOUCH_REJECT) { if (listener->state != LISTENER_HAS_END) -- cgit v1.2.3