Zebediah Figura : wineusb.sys: Return STATUS_DELETE_PENDING rather than STATUS_CANCELLED when a device is removed.
Module: wine Branch: master Commit: 181fe28f685453920a04d2234a9a838b7c619407 URL: https://source.winehq.org/git/wine.git/?a=commit;h=181fe28f685453920a04d2234... Author: Zebediah Figura <z.figura12(a)gmail.com> Date: Thu Feb 11 18:56:49 2021 -0600 wineusb.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(a)gmail.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> --- dlls/wineusb.sys/wineusb.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/dlls/wineusb.sys/wineusb.c b/dlls/wineusb.sys/wineusb.c index f70197704b1..f46f17d66f4 100644 --- a/dlls/wineusb.sys/wineusb.c +++ b/dlls/wineusb.sys/wineusb.c @@ -391,7 +391,7 @@ static NTSTATUS pdo_pnp(DEVICE_OBJECT *device_obj, IRP *irp) while ((entry = RemoveHeadList(&device->irp_list)) != &device->irp_list) { irp = CONTAINING_RECORD(entry, IRP, Tail.Overlay.ListEntry); - irp->IoStatus.Status = STATUS_CANCELLED; + irp->IoStatus.Status = STATUS_DELETE_PENDING; irp->IoStatus.Information = 0; IoCompleteRequest(irp, IO_NO_INCREMENT); }
participants (1)
-
Alexandre Julliard