summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2009-06-23 11:50:29 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2009-07-01 08:46:30 +1000
commit34424fab9abd7a4ca11036be25414129980db0e0 (patch)
treeb66bbd49f753f13dc1cc08c88851518ae2dff9ee
parentda04e8f1354fa9d253443489dc002b16f94d6fab (diff)
dix: set the client's error value to the bad deviceid in check_butmap_change.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
-rw-r--r--dix/inpututils.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/dix/inpututils.c b/dix/inpututils.c
index 8194e69b1..378deb0e0 100644
--- a/dix/inpututils.c
+++ b/dix/inpututils.c
@@ -45,11 +45,17 @@ check_butmap_change(DeviceIntPtr dev, CARD8 *map, int len, CARD32 *errval_out,
int i, ret;
if (!dev || !dev->button)
+ {
+ client->errorValue = (dev) ? dev->id : 0;
return BadDevice;
+ }
ret = XaceHook(XACE_DEVICE_ACCESS, client, dev, DixManageAccess);
if (ret != Success)
+ {
+ client->errorValue = dev->id;
return ret;
+ }
for (i = 0; i < len; i++) {
if (dev->button->map[i + 1] != map[i] && dev->button->down[i + 1])