aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/evdev.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/evdev.c b/src/evdev.c
index 4a9a331..63e70a3 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -1488,8 +1488,14 @@ EvdevProbe(InputInfoPtr pInfo)
/* count all buttons */
for (i = BTN_MISC; i < BTN_JOYSTICK; i++)
{
+ int mapping = 0;
if (TestBit(i, pEvdev->key_bitmask))
- num_buttons++;
+ {
+ mapping =
+ pEvdev->btnmap[EvdevUtilButtonEventToButtonNumber(pEvdev, i)];
+ if (mapping > num_buttons)
+ num_buttons = mapping;
+ }
}
if (num_buttons)