aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter.hutterer@who-t.net>2009-10-06 19:09:33 +1000
committerPeter Hutterer <peter.hutterer@who-t.net>2009-10-19 13:43:59 +1000
commit5a4b0ba33d3b1b956bef392ae351e4ee54f53cf9 (patch)
tree326ae8a2ddb1c1c9972de0a6f9c90a3b77ebaa7f
parentevdev 2.2.5 (diff)
downloadxf86-input-evdev-5a4b0ba33d3b1b956bef392ae351e4ee54f53cf9.tar.gz
xf86-input-evdev-5a4b0ba33d3b1b956bef392ae351e4ee54f53cf9.tar.bz2
xf86-input-evdev-5a4b0ba33d3b1b956bef392ae351e4ee54f53cf9.zip
Finalize the middle button emulation when a read error occurs (#23048)
If a read error occurs, remove the block and wakeup handlers for middle mouse button emulation. Otherwise, they'll still be around after the device has been reopened and overwritten with the new ones created by EvdevOn. Once this happened, future removal of the device can lead to a server crash. X.Org Bug 23048 <http://bugs.freedesktop.org/show_bug.cgi?id=23048> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> (cherry picked from commit f2dc0681febd297d95dae7c9e3ae19b771af8420)
-rw-r--r--src/evdev.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/evdev.c b/src/evdev.c
index 85ed233..ff5554c 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -576,6 +576,7 @@ EvdevReadInput(InputInfoPtr pInfo)
{
if (errno == ENODEV) /* May happen after resume */
{
+ EvdevMBEmuFinalize(pInfo);
xf86RemoveEnabledDevice(pInfo);
close(pInfo->fd);
pInfo->fd = -1;