mirror of
git://source.winehq.org/git/wine.git
synced 2024-09-05 23:50:44 +00:00
hidclass.sys: Move IoSetDeviceInterfaceState to PNP_RemoveDevice.
Signed-off-by: Aric Stewart <aric@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
5b31b764c0
commit
7229893493
|
@ -130,23 +130,12 @@ error:
|
|||
|
||||
void HID_DeleteDevice(HID_MINIDRIVER_REGISTRATION *driver, DEVICE_OBJECT *device)
|
||||
{
|
||||
NTSTATUS status;
|
||||
BASE_DEVICE_EXTENSION *ext;
|
||||
LIST_ENTRY *entry;
|
||||
IRP *irp;
|
||||
|
||||
ext = device->DeviceExtension;
|
||||
|
||||
if (ext->link_name.Buffer)
|
||||
{
|
||||
TRACE("Delete link %s\n", debugstr_w(ext->link_name.Buffer));
|
||||
|
||||
IoSetDeviceInterfaceState(&ext->link_name, FALSE);
|
||||
status = IoDeleteSymbolicLink(&ext->link_name);
|
||||
if (status != STATUS_SUCCESS)
|
||||
ERR("Delete Symbolic Link failed (%x)\n",status);
|
||||
}
|
||||
|
||||
if (ext->thread)
|
||||
{
|
||||
SetEvent(ext->halt_event);
|
||||
|
|
|
@ -212,9 +212,17 @@ NTSTATUS WINAPI PNP_AddDevice(DRIVER_OBJECT *driver, DEVICE_OBJECT *PDO)
|
|||
|
||||
NTSTATUS PNP_RemoveDevice(minidriver *minidriver, DEVICE_OBJECT *device, IRP *irp)
|
||||
{
|
||||
BASE_DEVICE_EXTENSION *ext = device->DeviceExtension;
|
||||
hid_device *hiddev;
|
||||
NTSTATUS rc = STATUS_NOT_SUPPORTED;
|
||||
|
||||
rc = IoSetDeviceInterfaceState(&ext->link_name, FALSE);
|
||||
if (rc)
|
||||
{
|
||||
FIXME("failed to disable interface %x\n", rc);
|
||||
return rc;
|
||||
}
|
||||
|
||||
if (irp)
|
||||
rc = minidriver->PNPDispatch(device, irp);
|
||||
HID_DeleteDevice(&minidriver->minidriver, device);
|
||||
|
|
Loading…
Reference in a new issue