59 lines
1.9 KiB
Diff
59 lines
1.9 KiB
Diff
From 7c51c881dc72827ca50ae9eea3d123eef9cb4a66 Mon Sep 17 00:00:00 2001
|
|
From: Peter Hutterer <peter.hutterer@who-t.net>
|
|
Date: Wed, 20 Jun 2018 07:56:05 +1000
|
|
Subject: [PATCH libinput] tools: pass a valid grab parameter to list-devices
|
|
|
|
My kingdome for a compiler warning. Or a scan-build warning. Or a coverity
|
|
warning. Or anything... But no, nothing.
|
|
|
|
Also make the open_restricted() more robust to a NULL userdata, because
|
|
effectively that's what we were passing here.
|
|
|
|
Fixes https://gitlab.freedesktop.org/libinput/libinput/issues/50
|
|
|
|
Introduced in 0a13223c39fdf0f079715bf83d498c0dcd9cf4f8
|
|
|
|
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
|
|
---
|
|
tools/libinput-list-devices.c | 3 ++-
|
|
tools/shared.c | 2 +-
|
|
2 files changed, 3 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/tools/libinput-list-devices.c b/tools/libinput-list-devices.c
|
|
index aa225ca0..4cbdf775 100644
|
|
--- a/tools/libinput-list-devices.c
|
|
+++ b/tools/libinput-list-devices.c
|
|
@@ -372,6 +372,7 @@ main(int argc, char **argv)
|
|
{
|
|
struct libinput *li;
|
|
struct libinput_event *ev;
|
|
+ bool grab = false;
|
|
|
|
/* This is kept for backwards-compatibility with the old
|
|
libinput-list-devices */
|
|
@@ -388,7 +389,7 @@ main(int argc, char **argv)
|
|
}
|
|
}
|
|
|
|
- li = tools_open_backend(BACKEND_UDEV, "seat0", false, false);
|
|
+ li = tools_open_backend(BACKEND_UDEV, "seat0", false, &grab);
|
|
if (!li)
|
|
return 1;
|
|
|
|
diff --git a/tools/shared.c b/tools/shared.c
|
|
index d1f02702..d3fb6294 100644
|
|
--- a/tools/shared.c
|
|
+++ b/tools/shared.c
|
|
@@ -232,7 +232,7 @@ open_restricted(const char *path, int flags, void *user_data)
|
|
if (fd < 0)
|
|
fprintf(stderr, "Failed to open %s (%s)\n",
|
|
path, strerror(errno));
|
|
- else if (*grab && ioctl(fd, EVIOCGRAB, (void*)1) == -1)
|
|
+ else if (grab && *grab && ioctl(fd, EVIOCGRAB, (void*)1) == -1)
|
|
fprintf(stderr, "Grab requested, but failed for %s (%s)\n",
|
|
path, strerror(errno));
|
|
|
|
--
|
|
2.17.1
|
|
|