Don't allow a negative fd in libevdev_set_fd
authorPeter Hutterer <peter.hutterer@who-t.net>
Tue, 8 Oct 2013 05:27:27 +0000 (15:27 +1000)
committerPeter Hutterer <peter.hutterer@who-t.net>
Mon, 14 Oct 2013 04:20:55 +0000 (14:20 +1000)
Everything else responds with -EBADF, let's do so here as well.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
libevdev/libevdev.c

index d01f38a..fd3c010 100644 (file)
@@ -209,7 +209,8 @@ libevdev_set_fd(struct libevdev* dev, int fd)
        if (dev->initialized) {
                log_bug("device already initialized.\n");
                return -EBADF;
-       }
+       } else if (fd < 0)
+               return -EBADF;
 
        rc = ioctl(fd, EVIOCGBIT(0, sizeof(dev->bits)), dev->bits);
        if (rc < 0)