diff options
Diffstat (limited to '')
-rw-r--r-- | libgamepad_get_absolute_axis_info.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/libgamepad_get_absolute_axis_info.c b/libgamepad_get_absolute_axis_info.c index a5aa4d5..ebd38fd 100644 --- a/libgamepad_get_absolute_axis_info.c +++ b/libgamepad_get_absolute_axis_info.c @@ -5,5 +5,7 @@ const struct input_absinfo * libgamepad_get_absolute_axis_info(struct libgamepad_device *device, uint16_t code) { - return libevdev_get_abs_info(device->internals->dev, (unsigned int)code); + if ((size_t)code >= ELEMSOF(device->absolute_axis_map) || device->absolute_axis_map[code] == -1) + return NULL; + return &device->internals->absinfo[device->absolute_axis_map[code]]; } |