diff options
-rw-r--r-- | src/evdev.c | 8 |
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) |