summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Hutterer <peter@cs.unisa.edu.au>2007-04-24 23:20:43 +0930
committerPeter Hutterer <peter@cs.unisa.edu.au>2007-04-24 23:20:43 +0930
commitc22c955c482df9a7645662023b6d1cf0f33aff15 (patch)
tree28cef8a08aba0e5ef862572b6a837c48ad531565
parentf87c44b90cb48a846160b16ff910545f5a659d15 (diff)
downloadxorg-driver-xf86-input-evdev-c22c955c482df9a7645662023b6d1cf0f33aff15.tar.gz
Disable and remove the device when a read error occurs.
-rw-r--r--src/evdev.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/evdev.c b/src/evdev.c
index 49ee4c7..7e8b633 100644
--- a/src/evdev.c
+++ b/src/evdev.c
@@ -117,7 +117,10 @@ EvdevReadInput(InputInfoPtr pInfo)
xf86Msg(X_ERROR, "Read error: %s (%d, %d != %ld)\n",
strerror(errno), errno, len, sizeof (ev));
if (len < 0)
- EvdevProc(pInfo->dev, DEVICE_CLOSE);
+ {
+ xf86DisableDevice(pInfo->dev, TRUE);
+ return;
+ }
break;
}