The wrong checks are being performed which can lead to XInput grabs failing to work. I'd argue, though, that remapping device buttons is wrong anyway, see my next email.
>From 5da6b7a5f67dcb0d3c7079230bafc9c2f59083d3 Mon Sep 17 00:00:00 2001 From: Thomas Jaeger <thjae...@gmail.com> Date: Sun, 4 Jan 2009 10:56:56 -0500 Subject: [PATCH] Fix typo in DoSetPointerMapping
--- dix/devices.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/dix/devices.c b/dix/devices.c index df6cd51..a798e18 100644 --- a/dix/devices.c +++ b/dix/devices.c @@ -1845,8 +1845,8 @@ DoSetPointerMapping(ClientPtr client, DeviceIntPtr device, BYTE *map, int n) for (dev = inputInfo.devices; dev; dev = dev->next) { if ((dev->coreEvents || dev == inputInfo.pointer) && dev->button) { for (i = 0; i < n; i++) { - if ((device->button->map[i + 1] != map[i]) && - BitIsOn(device->button->down, i + 1)) { + if ((dev->button->map[i + 1] != map[i]) && + BitIsOn(dev->button->down, i + 1)) { return MappingBusy; } } -- 1.6.0.4
_______________________________________________ xorg mailing list xorg@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/xorg