Date: Wednesday, August 18, 2010 @ 17:56:04 Author: jgc Revision: 87999
upgpkg: xf86-input-evdev 2.4.0-2 Add upstream patch, should fix FS#20432 Added: xf86-input-evdev/trunk/initialize-valuators.patch Modified: xf86-input-evdev/trunk/PKGBUILD ----------------------------+ PKGBUILD | 17 +++++++---- initialize-valuators.patch | 61 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 71 insertions(+), 7 deletions(-) Modified: PKGBUILD =================================================================== --- PKGBUILD 2010-08-18 21:45:28 UTC (rev 87998) +++ PKGBUILD 2010-08-18 21:56:04 UTC (rev 87999) @@ -3,7 +3,7 @@ # Contributor: Alexander Baldeck <[email protected] pkgname=xf86-input-evdev pkgver=2.4.0 -pkgrel=1 +pkgrel=2 pkgdesc="X.org evdev input driver" arch=(i686 x86_64) url="http://xorg.freedesktop.org/" @@ -13,14 +13,17 @@ conflicts=('xorg-server<1.8.0') options=('!libtool') groups=('xorg-input-drivers') -source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2) -sha1sums=('875dd3c35f8d0f409337b932d82a46da0e9570e7') +source=(${url}/releases/individual/driver/${pkgname}-${pkgver}.tar.bz2 + initialize-valuators.patch) +sha1sums=('875dd3c35f8d0f409337b932d82a46da0e9570e7' + '75d9fccd0247a4c032f68627fb4a37ddc5d77441') build() { cd "${srcdir}/${pkgname}-${pkgver}" - ./configure --prefix=/usr || return 1 - make || return 1 - make DESTDIR="${pkgdir}" install || return 1 + patch -Np1 -i "${srcdir}/initialize-valuators.patch" + ./configure --prefix=/usr + make + make DESTDIR="${pkgdir}" install install -m755 -d "${pkgdir}/usr/share/licenses/${pkgname}" - install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" || return 1 + install -m644 COPYING "${pkgdir}/usr/share/licenses/${pkgname}/" } Added: initialize-valuators.patch =================================================================== --- initialize-valuators.patch (rev 0) +++ initialize-valuators.patch 2010-08-18 21:56:04 UTC (rev 87999) @@ -0,0 +1,61 @@ +From ed47c7f33e315f163a6aebeb3e1c8947004576fd Mon Sep 17 00:00:00 2001 +From: Bartosz Brachaczek <[email protected]> +Date: Tue, 10 Aug 2010 20:31:00 +0000 +Subject: evdev: Revert "Set all valuators for relative motion events (#24737)" + +It isn't necessary to post zero-deltas to X Server. In order not to post +uninitialized "v" array we should rather simply initialize it. + +This reverts commit c1f16a4f59a584ab4546c2f16e20b06703042057. + +Signed-off-by: Bartosz Brachaczek <[email protected]> +Tested-by: Bartek Iwaniec <[email protected]> +Reviewed-by: Peter Hutterer <[email protected]> +Signed-off-by: Peter Hutterer <[email protected]> +--- +diff --git a/src/evdev.c b/src/evdev.c +index 5ea230c..bdac330 100644 +--- a/src/evdev.c ++++ b/src/evdev.c +@@ -386,7 +386,7 @@ EvdevProcessValuators(InputInfoPtr pInfo, int v[MAX_VALUATORS], int *num_v, + for (i = 0; i < REL_CNT; i++) + { + int map = pEvdev->axis_map[i]; +- if (map != -1) ++ if (pEvdev->delta[i] && map != -1) + { + v[map] = pEvdev->delta[i]; + if (map < first) +-- +cgit v0.8.3-6-g21f6 +From ec6cb31cc47eed3ccba4c906ca6c54b99136e9eb Mon Sep 17 00:00:00 2001 +From: Bartosz Brachaczek <[email protected]> +Date: Tue, 10 Aug 2010 20:31:37 +0000 +Subject: evdev: Initialize valuators array. (#24737) + +The array needs to be filled with zeros, otherwise we may end up sending +it with random values if non-zero values aren't in one row (which is the +case for A4Tech X-750F which sends REL_MISC events without a reason). + +X.Org Bug 24737 <http://bugs.freedesktop.org/show_bug.cgi?id=24737> + +Signed-off-by: Bartosz Brachaczek <[email protected]> +Tested-by: Bartek Iwaniec <[email protected]> +Reviewed-by: Peter Hutterer <[email protected]> +Signed-off-by: Peter Hutterer <[email protected]> +--- +diff --git a/src/evdev.c b/src/evdev.c +index bdac330..512e957 100644 +--- a/src/evdev.c ++++ b/src/evdev.c +@@ -661,7 +661,7 @@ static void + EvdevProcessSyncEvent(InputInfoPtr pInfo, struct input_event *ev) + { + int num_v = 0, first_v = 0; +- int v[MAX_VALUATORS]; ++ int v[MAX_VALUATORS] = {}; + EvdevPtr pEvdev = pInfo->private; + + EvdevProcessValuators(pInfo, v, &num_v, &first_v); +-- +cgit v0.8.3-6-g21f6
