aboutsummaryrefslogtreecommitdiffstats
path: root/main/libinput
diff options
context:
space:
mode:
authorprspkt <prspkt@protonmail.com>2018-06-26 20:33:33 +0300
committerSören Tempel <soeren+git@soeren-tempel.net>2018-06-29 08:05:16 +0200
commitc57e0b2762ba4ceb2608f4b8b4c6ab8c1f1a4d68 (patch)
treed8dd87b24800966648922327459fa79bfa75c208 /main/libinput
parent80fa40ff20f77e1a22c4bc89e9534526392446d6 (diff)
downloadaports-c57e0b2762ba4ceb2608f4b8b4c6ab8c1f1a4d68.tar.bz2
aports-c57e0b2762ba4ceb2608f4b8b4c6ab8c1f1a4d68.tar.xz
main/libinput: fix segfaulting on libinput list-devices
Diffstat (limited to 'main/libinput')
-rw-r--r--main/libinput/0001-tools-pass-a-valid-grab-parameter-to-list-devices.patch58
-rw-r--r--main/libinput/APKBUILD8
2 files changed, 63 insertions, 3 deletions
diff --git a/main/libinput/0001-tools-pass-a-valid-grab-parameter-to-list-devices.patch b/main/libinput/0001-tools-pass-a-valid-grab-parameter-to-list-devices.patch
new file mode 100644
index 0000000000..de19ca2051
--- /dev/null
+++ b/main/libinput/0001-tools-pass-a-valid-grab-parameter-to-list-devices.patch
@@ -0,0 +1,58 @@
+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] 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.18.0
+
diff --git a/main/libinput/APKBUILD b/main/libinput/APKBUILD
index c0d70f0db6..fcc02bdd4e 100644
--- a/main/libinput/APKBUILD
+++ b/main/libinput/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: Daniel Sabogal <dsabogalcc@gmail.com>
pkgname=libinput
pkgver=1.11.1
-pkgrel=0
+pkgrel=1
pkgdesc="Library for handling input devices"
url="https://www.freedesktop.org/wiki/Software/libinput"
arch="all"
@@ -10,7 +10,8 @@ license="MIT"
makedepends="eudev-dev libevdev-dev meson mtdev-dev"
subpackages="$pkgname-dev $pkgname-doc $pkgname-libs"
options="!check"
-source="https://freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz"
+source="https://freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz
+ 0001-tools-pass-a-valid-grab-parameter-to-list-devices.patch"
builddir="$srcdir"/$pkgname-$pkgver
build() {
@@ -28,4 +29,5 @@ package() {
DESTDIR="$pkgdir" ninja -C builddir/ install
}
-sha512sums="3dd1a318c89d66f5a66016c6dbfa5277b61a8cb5337d99f85b1eeef40ed894bdc04fd4588a97383988daea0f034df5a72bff318325320a01b857db9deb94a2b0 libinput-1.11.1.tar.xz"
+sha512sums="3dd1a318c89d66f5a66016c6dbfa5277b61a8cb5337d99f85b1eeef40ed894bdc04fd4588a97383988daea0f034df5a72bff318325320a01b857db9deb94a2b0 libinput-1.11.1.tar.xz
+52a897a0c974d0c5a205215505024550f0863c92cb456d99085d28f39f2744a6a5c2968a7f6ea7a19ba6e74e24a42b6e51172a9276e8e1c75e9f7b4006571e55 0001-tools-pass-a-valid-grab-parameter-to-list-devices.patch"