From 477c32708718f4470ac2e786b2446d7a44e45b9c Mon Sep 17 00:00:00 2001 From: Peter Hutterer Date: Fri, 19 Dec 2008 08:56:35 +1000 Subject: [PATCH] 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 --- dix/devices.c | 12 ++++++++---- 1 file 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)) {