xf86-input-evdev: Changes to 'evdev-2.8-branch'
Peter Hutterer
whot at kemper.freedesktop.org
Tue May 6 17:30:59 PDT 2014
src/evdev.c | 72 ++++++++++--------------------------------------------------
1 file changed, 12 insertions(+), 60 deletions(-)
New commits:
commit 62010287ebd8a72902630e3ba72e643f1f145c3c
Author: Peter Hutterer <peter.hutterer at who-t.net>
Date: Tue May 6 09:20:05 2014 +1000
Use the server's device list for duplicate detection (#78309)
EvdevAddDevice/EvdevRemoveDevice keep a reference to the device to detect
duplicate devices based on the dev_t.
EvdevAddDevices was called during PreInit, EvdevRemoveDevice was called during
DEVICE_CLOSE. That makes it imbalanced if the device succeeds PreInit but the
server skips everything else because MAX_DEVICES is exceeded. So for all
devices after MAX_DEVICES, we'd add a reference but never remove it,
eventually reading/writing past evdev_devices.
The server keeps the list of devices for us anyway, so remove the copy of all
the pointers and instead run through the device list the server gives us.
X.Org Bug 78309 <http://bugs.freedesktop.org/show_bug.cgi?id=78309>
Signed-off-by: Peter Hutterer <peter.hutterer at who-t.net>
Reviewed-by: Hans de Goede <hdegoede at redhat.com>
(cherry picked from commit 13dea90bc8ef2a2e6f55fb5ff5f54afe41d22f95)
More information about the xorg-commit
mailing list