From ed47c7f33e315f163a6aebeb3e1c8947004576fd Mon Sep 17 00:00:00 2001 From: Bartosz Brachaczek 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 Tested-by: Bartek Iwaniec Reviewed-by: Peter Hutterer Signed-off-by: Peter Hutterer --- 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 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 Signed-off-by: Bartosz Brachaczek Tested-by: Bartek Iwaniec Reviewed-by: Peter Hutterer Signed-off-by: Peter Hutterer --- 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