summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2011-11-10 13:11:05 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2011-11-11 16:35:25 +1000
commit6a495dad46a38b560e8aced569211a6e1c23d2cb (patch)
tree48c817d0714853b9928a9347f5ea66f9198fe893
parentb8f7b553910363c572abc04fa581470c6b74e7f3 (diff)
dix: complain about missing x/y valuators from the DIX
Current implementation requires DIX events to submit x/y valuator information. Complain if it's missing. Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r--dix/getevents.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/dix/getevents.c b/dix/getevents.c
index eabecd3f2..8c08440f9 100644
--- a/dix/getevents.c
+++ b/dix/getevents.c
@@ -1699,8 +1699,11 @@ GetTouchEvents(InternalEvent *events, DeviceIntPtr dev, uint32_t ddx_touchid,
if (flags & TOUCH_CLIENT_ID) /* A DIX-submitted TouchEnd */
{
touchpoint.client_id = &ddx_touchid;
- if (!mask_in) {
- ErrorF("[dix] dix-submitted events must have valuator information.\n");
+ if (!mask_in ||
+ !valuator_mask_isset(mask_in, t->x_axis) ||
+ !valuator_mask_isset(mask_in, t->y_axis))
+ {
+ ErrorF("[dix] dix-submitted events must have x/y valuator information.\n");
return 0;
}
} else /* a DDX-submitted touch */