From 34424fab9abd7a4ca11036be25414129980db0e0 Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Tue, 23 Jun 2009 11:50:29 +1000 Subject: [PATCH] dix: set the client's error value to the bad deviceid in check_butmap_change. Signed-off-by: Peter Hutterer --- dix/inpututils.c | 6 ++++++ 1 file changed, 6 insertions(+) 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])