summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChase Douglas <chase.douglas@ubuntu.com>2012-02-13 12:09:32 -0800
committerPeter Hutterer <peter.hutterer@who-t.net>2012-02-15 10:14:55 +1000
commit03d32fe7a718d9016053cdb5d57f51a74ef99b59 (patch)
tree3cd0906c4bab7dd64b9d9692ee68cdcaf027fffd
parent1ecb7aaf2adedad1996cd26176ef5802113e3ad9 (diff)
Don't dereference a touch after it has been ended when punting to next owner
In this case, we have ended the touch because the last owner has rejected it. We need to return from the function right now so we don't attempt to dereference another touch client for early acceptance processing. Signed-off-by: Chase Douglas <chase.douglas@ubuntu.com> Reviewed-by: Chase Douglas <chase.douglas@canonical.com> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r--Xi/exevents.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/Xi/exevents.c b/Xi/exevents.c
index de7d50a3a..816dfa7e9 100644
--- a/Xi/exevents.c
+++ b/Xi/exevents.c
@@ -1164,6 +1164,7 @@ TouchPuntToNextOwner(DeviceIntPtr dev, TouchPointInfoPtr ti,
{
EmitTouchEnd(dev, ti, 0, 0);
TouchEndTouch(dev, ti);
+ return;
}
if (ti->listeners[0].state == LISTENER_EARLY_ACCEPT)