xf86-input-libinput: Changes to 'master'
Peter Hutterer
whot at kemper.freedesktop.org
Thu Mar 9 02:21:23 UTC 2017
src/xf86libinput.c | 103 +++++++++++++++++++++++++++++++++++++++++------------
test/test-bezier.c | 7 +++
2 files changed, 87 insertions(+), 23 deletions(-)
New commits:
commit 72fb6d304eec6eeeac6b42963c2729134d56de57
Author: Peter Hutterer <peter.hutterer at who-t.net>
Date: Tue Feb 28 14:45:29 2017 +1000
test: fix a test failure on ppc64(le) and aarch64
Caused by different results in -O0 vs -O2. The resulting array differs only
slightly but the initial sequence has one extra zero. That triggers our
assert, no other compiler flag seem to be affecting this.
Compiled with -O0:
Breakpoint 1, test_nonzero_x_linear () at test-bezier.c:157
157 assert(bezier[x] > bezier[x-1]);
(gdb) p bezier
$6 = {0 <repeats 409 times>, 1, 2, 4, 5, 7, 9, 10, 12, 14, 15, 17, 19, 21, 22,
Compiled with -O2:
(gdb) p bezier
$1 = {0 <repeats 410 times>, 1, 3, 5, 7, 9, 10, 12, 14, 15, 17, 19, 20, 22,
Printing of the temporary numbers in the decasteljau function shows that a few
of them are off by one, e.g.
408.530612/0.836735 with O0, but
409.510204/0.836735 with O2
Note: these are not rounding errors caused by the code, the cast to int
happens afterwards.
Hack around this by allowing for one extra zero before we check that the rest
of the curve is ascending again.
https://bugs.freedesktop.org/show_bug.cgi?id=99992
Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
commit aae2c8ad9a9f1712149c93d50284ddb5f37e4cbd
Author: Peter Hutterer <peter.hutterer at who-t.net>
Date: Fri Feb 24 12:56:41 2017 +1000
Open sysfs files directly instead of going through the server
Only use-case here are pad mode LEDs that now live in /sys/class/leds. Asking
the server to open them is pointless, the server only knows how to open Option
"Device". And since the LEDs are in sysfs we should have access to them
anyway, so no need for jumping through or hula-ing hoops.
xf86CloseSerial() works as intended as it's a slim wrapper around close(), so
we only have to worry about the open() path here.
Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
commit dafc296f2df587a1bb5feb37697c50608db4f246
Author: Peter Hutterer <peter.hutterer at who-t.net>
Date: Fri Feb 24 12:34:10 2017 +1000
Add streq() macro, replace strcmp instances with it
And why isn't this a thing in glibc yet
Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
Reviewed-by: Eric Engestrom <eric.engestrom at imgtec.com>
commit 7c90f06d569b1b14d84075e7cea22bce06b925e6
Author: Peter Hutterer <peter.hutterer at who-t.net>
Date: Fri Feb 24 12:27:37 2017 +1000
Update pad modes in a workproc, not during the input thread
Updating the property directly causes us to send events from the input thread
which has some "interesting" side effects like messing up the reply order or
just crashing the server.
Schedule a work proc instead and update it whenever the server is back in the
main thread.
Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
More information about the xorg-commit
mailing list