diff options
author | Peter Hutterer <peter.hutterer@who-t.net> | 2008-12-19 08:56:35 +1000 |
---|---|---|
committer | Peter Hutterer <peter.hutterer@who-t.net> | 2008-12-23 09:12:55 +1000 |
commit | 477c32708718f4470ac2e786b2446d7a44e45b9c (patch) | |
tree | fa809cf5a092aff7392f1beede8b2f92cc7f1d1d /dix | |
parent | 25aac8b5793caa92116b766d5a9e12dbecdb0290 (diff) |
dix: don't disable uninitialized devices.
If a device hasn't been initialized, it doesn't have a cursor yet. So don't
set the cursor to the NullCursor, and don't try to DisableDevice either.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Diffstat (limited to 'dix')
-rw-r--r-- | dix/devices.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/dix/devices.c b/dix/devices.c index 48b6e7dd4..ff6f0ec98 100644 --- a/dix/devices.c +++ b/dix/devices.c @@ -965,11 +965,15 @@ RemoveDevice(DeviceIntPtr dev) return BadImplementation; initialized = dev->inited; - if (DevHasCursor(dev)) - screen->DisplayCursor(dev, screen, NullCursor); - deviceid = dev->id; - DisableDevice(dev); + + if (initialized) + { + if (DevHasCursor(dev)) + screen->DisplayCursor(dev, screen, NullCursor); + + DisableDevice(dev); + } prev = NULL; for (tmp = inputInfo.devices; tmp; (prev = tmp), (tmp = next)) { |