diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2012-07-31 16:39:00 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2012-08-07 07:38:26 +1000 |
commit | 1cb8f074df8d16879ec80d778d26fb5b9af05a3b (patch) | |
tree | be9ddf864bf3deac477e6f09fc0e1ac145defb8b | |
parent | 4eacb581fb71eaf515ec67af0f206126d8328043 (diff) |
Don't delete the device on ENODEV
This is signal handler code and we cannot clean up properly while in the
signal handler. So reduce the code to removing the signal handler and let
the device be cleaned up later.
If hotplugging is on, the server will remove it when the config backend says
so and if it is off, the server will remove it on shutdown.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
-rw-r--r-- | src/evdev.c | 6 |
1 files changed, 1 insertions, 5 deletions
diff --git a/src/evdev.c b/src/evdev.c index f54b66f..b832d98 100644 --- a/src/evdev.c +++ b/src/evdev.c @@ -1113,12 +1113,8 @@ EvdevReadInput(InputInfoPtr pInfo) if (len <= 0) { if (errno == ENODEV) /* May happen after resume */ - { - EvdevMBEmuFinalize(pInfo); - Evdev3BEmuFinalize(pInfo); xf86RemoveEnabledDevice(pInfo); - EvdevCloseDevice(pInfo); - } else if (errno != EAGAIN) + else if (errno != EAGAIN) { /* We use X_NONE here because it doesn't alloc */ xf86MsgVerb(X_NONE, 0, "%s: Read error: %s\n", pInfo->name, |