Commit aecbc712 authored by Remigiusz Marcinkiewicz's avatar Remigiusz Marcinkiewicz Committed by Daniel Stone

Input: Allow a pointer to a device to be returned in NIDR

Allow a pointer to the first device added to be returned, so we know which
device(s) were added by the NIDR call.
parent 4f05f959
......@@ -226,7 +226,7 @@ ChangeDeviceControl(ClientPtr client, DeviceIntPtr dev,
*
*/
int
NewInputDeviceRequest(InputOption *options)
NewInputDeviceRequest(InputOption *options, DeviceIntPtr *pdev)
{
return BadValue;
}
......
......@@ -2307,7 +2307,7 @@ ChangeDeviceControl(register ClientPtr client, DeviceIntPtr pDev,
}
int
NewInputDeviceRequest(InputOption *options)
NewInputDeviceRequest(InputOption *options, DeviceIntPtr *pdev)
{
InputOption *option = NULL;
KdPointerInfo *pi = NULL;
......@@ -2372,6 +2372,12 @@ NewInputDeviceRequest(InputOption *options)
}
}
if (pi) {
*pdev = pi->dixdev;
} else if(ki) {
*pdev = ki->dixdev;
}
return Success;
}
......
......@@ -315,7 +315,7 @@ AddOtherInputDevices()
#endif
int
NewInputDeviceRequest (InputOption *options)
NewInputDeviceRequest (InputOption *options, DeviceIntPtr *pdev)
{
IDevRec *idev = NULL;
InputDriverPtr drv = NULL;
......@@ -409,6 +409,7 @@ NewInputDeviceRequest (InputOption *options)
if (dev->inited && dev->startup)
EnableDevice(dev);
*pdev = dev;
return Success;
unwind:
......
......@@ -445,7 +445,8 @@ extern DeviceIntPtr LookupDeviceIntRec(
/* Implemented by the DDX. */
extern int NewInputDeviceRequest(
InputOption *options);
InputOption *options,
DeviceIntPtr *dev);
extern void DeleteInputDeviceRequest(
DeviceIntPtr dev);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment