summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2013-08-31 12:37:14 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2013-08-31 13:17:56 +1000
commit22d2a735c473dfa260ffc6bcbb16a5115b8ed719 (patch)
tree297b571a8addeefc02a5705c297d398e5ce9ffd1
parent2c101977b7830070bdbd18e696857c667e69dee0 (diff)
Return -EBADF for functions that need the fd initialized
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by: Benjamin Tissoires <benjamin.tissoires@gmail.com>
-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);