diff options
-rw-r--r-- | dix/devices.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/dix/devices.c b/dix/devices.c index 3c7d480c6..172fc0460 100644 --- a/dix/devices.c +++ b/dix/devices.c @@ -516,6 +516,12 @@ DisableAllDevices(void) { DeviceIntPtr dev, tmp; + /* Disable slave devices first, excluding XTest devices */ + nt_list_for_each_entry_safe(dev, tmp, inputInfo.devices, next) { + if (!IsXTestDevice(dev, NULL) && !IsMaster(dev)) + DisableDevice(dev, FALSE); + } + /* Disable XTest devices */ nt_list_for_each_entry_safe(dev, tmp, inputInfo.devices, next) { if (!IsMaster(dev)) DisableDevice(dev, FALSE); |