From 97914b333fb31bb77d33573d19fb64503ec4bf99 Mon Sep 17 00:00:00 2001 From: "A. Wilcox" Date: Sun, 19 Jan 2020 22:34:27 +0000 Subject: user/libinput: Fix input_event code for time64 compatibility --- user/libinput/APKBUILD | 9 ++++++--- user/libinput/time64.patch | 49 ++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+), 3 deletions(-) create mode 100644 user/libinput/time64.patch (limited to 'user') diff --git a/user/libinput/APKBUILD b/user/libinput/APKBUILD index 950841163..584fbf44a 100644 --- a/user/libinput/APKBUILD +++ b/user/libinput/APKBUILD @@ -1,7 +1,7 @@ # Contributor: Sören Tempel # Maintainer: A. Wilcox pkgname=libinput -pkgver=1.14.3 +pkgver=1.15.0 pkgrel=0 pkgdesc="Library for handling input devices" url="https://www.freedesktop.org/wiki/Software/libinput/" @@ -13,7 +13,9 @@ makedepends="doxygen eudev-dev graphviz libevdev-dev libwacom-dev meson checkdepends="check-dev valgrind" subpackages="$pkgname-dev $pkgname-doc" replaces="$pkgname-libs" -source="https://freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz" +source="https://freedesktop.org/software/$pkgname/$pkgname-$pkgver.tar.xz + time64.patch + " build() { meson --prefix=/usr \ @@ -31,4 +33,5 @@ package() { DESTDIR="$pkgdir" ninja -C builddir/ install } -sha512sums="f01d1bd1b25b8060519575644597d35f0c89de5386d298441f440128ceee3e57549921a058adec31adc8b33dbdedf4c0bd12c76905a69f752859d3136e26336d libinput-1.14.3.tar.xz" +sha512sums="5dab48e1b4c9c0deb5b01ebc3ccb4cc28d614be25d87daaf42f51fbd2d955266f3fdba73029bc0094caa55060dad8967751b72d8f45f19a40b542f0c9118c1b6 libinput-1.15.0.tar.xz +e4c898359c8264651b0d0a795c05ccfebcd24e44c7b2dbad8a2bce2c0da6138288e0be93bd68e4b61cc0fb56e9a46ad5c4b670f3f88e493b8a7993020f1d2c61 time64.patch" diff --git a/user/libinput/time64.patch b/user/libinput/time64.patch new file mode 100644 index 000000000..47833b6ee --- /dev/null +++ b/user/libinput/time64.patch @@ -0,0 +1,49 @@ +From 2e15e1f56d673626d518760c1b7997543bb01fea Mon Sep 17 00:00:00 2001 +From: "A. Wilcox" +Date: Sun, 19 Jan 2020 16:01:57 -0600 +Subject: [PATCH] evdev-fallback: Use input_event_init for fallback + +Old-style field initialisation ignores the 64-bit time_t change in +Linux UAPI, which causes the structure to be incompletely initialised +on 32-bit systems with the 64-bit time_t kernel headers. + +This patch uses the input_event_init helper from the original 64-bit +time_t enablement patch. + +Signed-off-by: A. Wilcox +Fixes: 5dc1a7ebd ("Adjust for 64bit time_t for 32bit architectures") +See-Also: libinput/libinput!346 +--- + src/evdev-fallback.c | 9 +++++---- + 1 file changed, 5 insertions(+), 4 deletions(-) + +diff --git a/src/evdev-fallback.c b/src/evdev-fallback.c +index 651f0111..99c87c87 100644 +--- a/src/evdev-fallback.c ++++ b/src/evdev-fallback.c +@@ -29,6 +29,7 @@ + #include + + #include "evdev-fallback.h" ++#include "util-input-event.h" + + static void + fallback_keyboard_notify_key(struct fallback_dispatch *dispatch, +@@ -701,10 +702,10 @@ fallback_lid_keyboard_event(uint64_t time, + if (dispatch->lid.reliability == RELIABILITY_WRITE_OPEN) { + int fd = libevdev_get_fd(dispatch->device->evdev); + int rc; +- struct input_event ev[2] = { +- {{ 0, 0 }, EV_SW, SW_LID, 0 }, +- {{ 0, 0 }, EV_SYN, SYN_REPORT, 0 }, +- }; ++ struct input_event ev[2]; ++ ++ ev[0] = input_event_init(0, EV_SW, SW_LID, 0); ++ ev[1] = input_event_init(0, EV_SYN, SYN_REPORT, 0); + + rc = write(fd, ev, sizeof(ev)); + +-- +2.24.1 + -- cgit v1.2.3-70-g09d2