summaryrefslogtreecommitdiff
path: root/libevdev/libevdev.c
diff options
context:
space:
mode:
Diffstat (limited to 'libevdev/libevdev.c')
-rw-r--r--libevdev/libevdev.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/libevdev/libevdev.c b/libevdev/libevdev.c
index 1c99e1f..867e008 100644
--- a/libevdev/libevdev.c
+++ b/libevdev/libevdev.c
@@ -1130,6 +1130,9 @@ libevdev_kernel_set_abs_info(struct libevdev *dev, unsigned int code, const stru
{
int rc;
+ if (dev->fd < 0)
+ return -EBADF;
+
if (code > ABS_MAX)
return -EINVAL;
@@ -1147,6 +1150,9 @@ libevdev_grab(struct libevdev *dev, enum libevdev_grab_mode grab)
{
int rc = 0;
+ if (dev->fd < 0)
+ return -EBADF;
+
if (grab != LIBEVDEV_GRAB && grab != LIBEVDEV_UNGRAB)
return -EINVAL;
@@ -1250,6 +1256,9 @@ libevdev_kernel_set_led_values(struct libevdev *dev, ...)
int rc = 0;
size_t nleds = 0;
+ if (dev->fd < 0)
+ return -EBADF;
+
memset(ev, 0, sizeof(ev));
va_start(args, dev);