Input: Don't enable devices when we open them
Thanks to Xi's braindead design, it's otherwise impossible to query input devices without enabling them. Hurrah.
This commit is contained in:
parent
0a31db14b7
commit
cd8e99e56e
|
@ -98,7 +98,6 @@ int
|
||||||
ProcXOpenDevice(ClientPtr client)
|
ProcXOpenDevice(ClientPtr client)
|
||||||
{
|
{
|
||||||
xInputClassInfo evbase[numInputClasses];
|
xInputClassInfo evbase[numInputClasses];
|
||||||
Bool enableit = FALSE;
|
|
||||||
int j = 0;
|
int j = 0;
|
||||||
int status = Success;
|
int status = Success;
|
||||||
xOpenDeviceReply rep;
|
xOpenDeviceReply rep;
|
||||||
|
@ -121,7 +120,6 @@ ProcXOpenDevice(ClientPtr client)
|
||||||
SendErrorToClient(client, IReqCode, X_OpenDevice, 0, BadDevice);
|
SendErrorToClient(client, IReqCode, X_OpenDevice, 0, BadDevice);
|
||||||
return Success;
|
return Success;
|
||||||
}
|
}
|
||||||
enableit = TRUE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
OpenInputDevice(dev, client, &status);
|
OpenInputDevice(dev, client, &status);
|
||||||
|
@ -129,8 +127,6 @@ ProcXOpenDevice(ClientPtr client)
|
||||||
SendErrorToClient(client, IReqCode, X_OpenDevice, 0, status);
|
SendErrorToClient(client, IReqCode, X_OpenDevice, 0, status);
|
||||||
return Success;
|
return Success;
|
||||||
}
|
}
|
||||||
if (enableit && dev->inited && dev->startup)
|
|
||||||
(void)EnableDevice(dev);
|
|
||||||
|
|
||||||
rep.repType = X_Reply;
|
rep.repType = X_Reply;
|
||||||
rep.RepType = X_OpenDevice;
|
rep.RepType = X_OpenDevice;
|
||||||
|
|
|
@ -204,17 +204,6 @@ OpenInputDevice(DeviceIntPtr dev,
|
||||||
if (!dev->inited)
|
if (!dev->inited)
|
||||||
ActivateDevice(dev);
|
ActivateDevice(dev);
|
||||||
|
|
||||||
if (!dev->public.on) {
|
|
||||||
if (EnableDevice(dev)) {
|
|
||||||
dev->startup = FALSE;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
ErrorF("couldn't enable device %s\n", dev->name);
|
|
||||||
*status = BadDevice;
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
*status = Success;
|
*status = Success;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue