diff --git a/dix/devices.c b/dix/devices.c index 0ccf25277..cbdd4eacd 100644 --- a/dix/devices.c +++ b/dix/devices.c @@ -982,6 +982,8 @@ CloseDownDevices(void) { DeviceIntPtr dev; + OsBlockSignals(); + /* Float all SDs before closing them. Note that at this point resources * (e.g. cursors) have been freed already, so we can't just call * AttachDevice(NULL, dev, NULL). Instead, we have to forcibly set master @@ -1004,6 +1006,8 @@ CloseDownDevices(void) inputInfo.keyboard = NULL; inputInfo.pointer = NULL; XkbDeleteRulesDflts(); + + OsReleaseSignals(); } /**