summaryrefslogtreecommitdiff
path: root/libevdev/libevdev-int.h
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2013-06-26 16:47:43 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2013-06-27 10:41:54 +1000
commit70c17eac019a3801f3e748d9366e5d2b4fbca9b8 (patch)
treeb18fa31f518722b9b092b72da8b5a73eb30d1c58 /libevdev/libevdev-int.h
parent7bb8e339ca9425e7378c7f6900ff5657dca34d14 (diff)
downloadlibevdev-70c17eac019a3801f3e748d9366e5d2b4fbca9b8.tar.gz
Don't crash peeking at a zero-sized queue
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'libevdev/libevdev-int.h')
-rw-r--r--libevdev/libevdev-int.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/libevdev/libevdev-int.h b/libevdev/libevdev-int.h
index 5d3502a..1a4f224 100644
--- a/libevdev/libevdev-int.h
+++ b/libevdev/libevdev-int.h
@@ -121,7 +121,7 @@ queue_pop(struct libevdev *dev, struct input_event *ev)
static inline int
queue_peek(struct libevdev *dev, size_t idx, struct input_event *ev)
{
- if (idx > dev->queue_next)
+ if (dev->queue_next == 0 || idx > dev->queue_next)
return 1;
*ev = dev->queue[idx];
return 0;