diff --git a/dix/devices.c b/dix/devices.c index 87b6dc7b5..1037e4254 100644 --- a/dix/devices.c +++ b/dix/devices.c @@ -1956,7 +1956,7 @@ ProcChangeKeyboardControl (ClientPtr client) keyboard = PickKeyboard(client); for (pDev = inputInfo.devices; pDev; pDev = pDev->next) { - if ((pDev == keyboard || (!IsMaster(keyboard) && pDev->u.master == keyboard)) && + if ((pDev == keyboard || (!IsMaster(pDev) && pDev->u.master == keyboard)) && pDev->kbdfeed && pDev->kbdfeed->CtrlProc) { ret = XaceHook(XACE_DEVICE_ACCESS, client, pDev, DixManageAccess); if (ret != Success) @@ -1965,7 +1965,7 @@ ProcChangeKeyboardControl (ClientPtr client) } for (pDev = inputInfo.devices; pDev; pDev = pDev->next) { - if ((pDev == keyboard || (!IsMaster(keyboard) && pDev->u.master == keyboard)) && + if ((pDev == keyboard || (!IsMaster(pDev) && pDev->u.master == keyboard)) && pDev->kbdfeed && pDev->kbdfeed->CtrlProc) { ret = DoChangeKeyboardControl(client, pDev, vlist, vmask); if (ret != Success)