diff options
| author | Peter Hutterer <peter.hutterer@who-t.net> | 2013-08-23 10:28:57 +1000 |
|---|---|---|
| committer | Peter Hutterer <peter.hutterer@who-t.net> | 2013-08-29 11:36:20 +1000 |
| commit | d9e633cf66febf6425103366f671d36f6d11814d (patch) | |
| tree | 3c4db1e5c40c688e4363512e024e91188eca02e7 /libevdev/libevdev.c | |
| parent | 40fda4b2d478d8f6fe68331a771b59f66a6a22ac (diff) | |
| download | libevdev-d9e633cf66febf6425103366f671d36f6d11814d.tar.gz | |
Fix a few signed/unsigned int comparisons
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
Diffstat (limited to 'libevdev/libevdev.c')
| -rw-r--r-- | libevdev/libevdev.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/libevdev/libevdev.c b/libevdev/libevdev.c index e4bbd4f..5356e58 100644 --- a/libevdev/libevdev.c +++ b/libevdev/libevdev.c @@ -853,7 +853,7 @@ libevdev_has_event_code(const struct libevdev *dev, unsigned int type, unsigned max = type_to_mask_const(dev, type, &mask); - if (max == -1 || code > max) + if (max == -1 || code > (unsigned int)max) return 0; return bit_is_set(mask, code); @@ -922,7 +922,7 @@ libevdev_get_slot_value(const struct libevdev *dev, unsigned int slot, unsigned if (!libevdev_has_event_type(dev, EV_ABS) || !libevdev_has_event_code(dev, EV_ABS, code)) return 0; - if (slot >= dev->num_slots || slot >= MAX_SLOTS) + if (dev->num_slots < 0 || slot >= (unsigned int)dev->num_slots || slot >= MAX_SLOTS) return 0; if (code > ABS_MT_MAX || code < ABS_MT_MIN) @@ -960,7 +960,8 @@ libevdev_fetch_slot_value(const struct libevdev *dev, unsigned int slot, unsigne { if (libevdev_has_event_type(dev, EV_ABS) && libevdev_has_event_code(dev, EV_ABS, code) && - slot < dev->num_slots && slot < MAX_SLOTS) { + dev->num_slots >= 0 && + slot < (unsigned int)dev->num_slots && slot < MAX_SLOTS) { *value = libevdev_get_slot_value(dev, slot, code); return 1; } else |
