mirror of
git://source.winehq.org/git/wine.git
synced 2024-09-16 04:36:58 +00:00
winehid.sys: Pass PnP IRPs down to the next device.
hidclass requires the minidriver to do this, and to return success from IRP_MN_START_DEVICE. Signed-off-by: Zebediah Figura <z.figura12@gmail.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
6e75cc98e8
commit
14fa811f95
|
@ -68,6 +68,14 @@ static NTSTATUS WINAPI internal_ioctl(DEVICE_OBJECT *device, IRP *irp)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static NTSTATUS WINAPI driver_pnp(DEVICE_OBJECT *device, IRP *irp)
|
||||||
|
{
|
||||||
|
HID_DEVICE_EXTENSION *ext = device->DeviceExtension;
|
||||||
|
|
||||||
|
IoSkipCurrentIrpStackLocation(irp);
|
||||||
|
return IoCallDriver(ext->NextDeviceObject, irp);
|
||||||
|
}
|
||||||
|
|
||||||
static NTSTATUS WINAPI add_device(DRIVER_OBJECT *driver, DEVICE_OBJECT *device)
|
static NTSTATUS WINAPI add_device(DRIVER_OBJECT *driver, DEVICE_OBJECT *device)
|
||||||
{
|
{
|
||||||
TRACE("(%p, %p)\n", driver, device);
|
TRACE("(%p, %p)\n", driver, device);
|
||||||
|
@ -81,6 +89,7 @@ NTSTATUS WINAPI DriverEntry(DRIVER_OBJECT *driver, UNICODE_STRING *path)
|
||||||
TRACE("(%p, %s)\n", driver, debugstr_w(path->Buffer));
|
TRACE("(%p, %s)\n", driver, debugstr_w(path->Buffer));
|
||||||
|
|
||||||
driver->MajorFunction[IRP_MJ_INTERNAL_DEVICE_CONTROL] = internal_ioctl;
|
driver->MajorFunction[IRP_MJ_INTERNAL_DEVICE_CONTROL] = internal_ioctl;
|
||||||
|
driver->MajorFunction[IRP_MJ_PNP] = driver_pnp;
|
||||||
driver->DriverExtension->AddDevice = add_device;
|
driver->DriverExtension->AddDevice = add_device;
|
||||||
|
|
||||||
memset(®istration, 0, sizeof(registration));
|
memset(®istration, 0, sizeof(registration));
|
||||||
|
|
Loading…
Reference in a new issue