Zebediah Figura : winebus.sys: Return STATUS_DELETE_PENDING rather than STATUS_CANCELLED when a device is removed.
Alexandre Julliard
julliard at winehq.org
Fri Feb 12 14:37:37 CST 2021
Module: wine
Branch: master
Commit: 141fdcc0efe923a83db9794d9855ef295bd9bece
URL: https://source.winehq.org/git/wine.git/?a=commit;h=141fdcc0efe923a83db9794d9855ef295bd9bece
Author: Zebediah Figura <z.figura12 at gmail.com>
Date: Thu Feb 11 18:56:50 2021 -0600
winebus.sys: Return STATUS_DELETE_PENDING rather than STATUS_CANCELLED when a device is removed.
Microsoft doesn't really clearly document this, but their driver samples return it here, and so do remove locks.
Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
dlls/winebus.sys/main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/dlls/winebus.sys/main.c b/dlls/winebus.sys/main.c
index 396a9d07123..8d3dec4779a 100644
--- a/dlls/winebus.sys/main.c
+++ b/dlls/winebus.sys/main.c
@@ -370,7 +370,7 @@ void bus_remove_hid_device(DEVICE_OBJECT *device)
while ((entry = RemoveHeadList(&ext->irp_queue)) != &ext->irp_queue)
{
irp = CONTAINING_RECORD(entry, IRP, Tail.Overlay.s.ListEntry);
- irp->IoStatus.u.Status = STATUS_CANCELLED;
+ irp->IoStatus.u.Status = STATUS_DELETE_PENDING;
irp->IoStatus.Information = 0;
IoCompleteRequest(irp, IO_NO_INCREMENT);
}
More information about the wine-cvs
mailing list