Don't return the next element if the queue is full
authorPeter Hutterer <peter.hutterer@who-t.net>
Wed, 26 Jun 2013 07:26:50 +0000 (17:26 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Thu, 27 Jun 2013 00:41:54 +0000 (10:41 +1000)
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
libevdev/libevdev-int.h

index 911dc40..43cfe8a 100644 (file)
@@ -214,6 +214,9 @@ queue_num_free_elements(struct libevdev *dev)
 static inline struct input_event *
 queue_next_element(struct libevdev *dev)
 {
+       if (dev->queue_next == dev->queue_size)
+               return NULL;
+
        return &dev->queue[dev->queue_next];
 }