Xi: When attaching, check for ptr -> ptr and keybd -> keybd.
Some pointer devices have key classes (e.g. MS Optical Desktop 2000). The previous test was performed as Error if ptr -> keybd or keybd -> ptr. This doesnt work with such devices. New test is Succeed if ptr->ptr or keybd->keybd.
This commit is contained in:
parent
389dae73cc
commit
e7211eb0b3
|
@ -272,10 +272,10 @@ ProcXChangeDeviceHierarchy(ClientPtr client)
|
||||||
goto unwind;
|
goto unwind;
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((IsPointerDevice(newmaster) &&
|
if (!((IsPointerDevice(newmaster) &&
|
||||||
!IsPointerDevice(ptr)) ||
|
IsPointerDevice(ptr)) ||
|
||||||
(IsKeyboardDevice(newmaster) &&
|
(IsKeyboardDevice(newmaster) &&
|
||||||
!IsKeyboardDevice(ptr)))
|
IsKeyboardDevice(ptr))))
|
||||||
{
|
{
|
||||||
rc = BadDevice;
|
rc = BadDevice;
|
||||||
goto unwind;
|
goto unwind;
|
||||||
|
|
Loading…
Reference in New Issue
Block a user