[ANNOUNCE] libevdev 1.1
peter.hutterer at who-t.net
Mon Mar 24 23:29:14 PDT 2014
libevdev 1.1 is now available. It is highly recommended that you update from
1.0 to this release, 1.0 exposes some severe issues in the handling of
multitouch events when a SYN_DROPPED is released.
More specifically, the following things were not handled correctly:
* if the touch slot changes during SYN_DROPPED, the caller may see the wrong
touch slot after syncing from libevdev
* if the touch slot is zero after SYN_DROPPED but a state change causes a
sync of slots, the caller may see the wrong slot after syncing from
* if the tracking ID changes within a slot during SYN_DROPPED, the caller
may not close a touchpoint properly. libevdev now sends ABS_TRACKING_ID
-1 before the new tracking ID during sync.
This was the reason for stuck touchpoints in synaptics, visible usually
during login or after a resume from suspend. It is likely that all libevdev
users were affected by this issue one way or another.
Updating to libevdev 1.1 will fix the sync of multitouch axes after a
Other notable fixes since 1.0:
* libevdev_set_event_value now filters out-of-bounds slot values and logs a
* libevdev event processing now filters out-of-bounds slot value and
logs a bug (Note: this cannot happen on a normal kernel device anyway)
* Devices with more than MAX_SLOTS touch slots are now capped at
MAX_SLOTS (currently 60) during sync to avoid out-of-bounds reads.
Peter Hutterer (2):
Add documentation for axis updates without a tracking ID
git tag: libevdev-1.1
MD5: b557128260659dc7b066c2b15e7b5082 libevdev-1.1.tar.xz
SHA1: 320e9aec9fd8a513e5db86fc17e61f615d40b60a libevdev-1.1.tar.xz
SHA256: 3b0cf29342c7beaae47c0fc5eaff434cc821b64af68367908d0c306c2284ce04 libevdev-1.1.tar.xz
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Size: 181 bytes
Desc: not available
More information about the Input-tools