diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2011-11-10 13:11:05 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2011-11-11 16:35:25 +1000 |
commit | 6a495dad46a38b560e8aced569211a6e1c23d2cb (patch) | |
tree | 48c817d0714853b9928a9347f5ea66f9198fe893 | |
parent | b8f7b553910363c572abc04fa581470c6b74e7f3 (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.c | 7 |
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 */ |