diff --git a/libevdev/libevdev.c b/libevdev/libevdev.c index c316e34..fbfd8f0 100644 --- a/libevdev/libevdev.c +++ b/libevdev/libevdev.c @@ -1190,10 +1190,9 @@ libevdev_get_event_type_name(unsigned int type) const char* libevdev_get_event_code_name(unsigned int type, unsigned int code) { - if (type > EV_MAX) - return NULL; + int max = libevdev_get_event_type_max(type); - if (code > ev_max[type]) + if (max == -1 || code > (unsigned int)max) return NULL; return event_type_map[type][code];