mirror of
https://github.com/reactos/reactos.git
synced 2024-12-28 01:55:19 +00:00
fix nasty bug:-(
svn path=/trunk/; revision=13863
This commit is contained in:
parent
d95010663e
commit
f05c21fa3a
1 changed files with 10 additions and 4 deletions
|
@ -38,10 +38,12 @@ QUEUE_BOLIERPLATE
|
||||||
IoSetCancelRoutine(Irp, CancelRoutine);
|
IoSetCancelRoutine(Irp, CancelRoutine);
|
||||||
if (Irp->Cancel && IoSetCancelRoutine(Irp, NULL))
|
if (Irp->Cancel && IoSetCancelRoutine(Irp, NULL))
|
||||||
{
|
{
|
||||||
// IRP has already been cancelled (before we got to queue it),
|
/*
|
||||||
// but we got to remove the cancel routine before the canceler could,
|
Irp has already been cancelled (before we got to queue it),
|
||||||
// so complete irp ourself
|
and we got to remove the cancel routine before the canceler could,
|
||||||
|
so we cancel/complete the irp ourself.
|
||||||
|
*/
|
||||||
|
|
||||||
Unlock(theLock);
|
Unlock(theLock);
|
||||||
|
|
||||||
Irp->IoStatus.Status = STATUS_CANCELLED;
|
Irp->IoStatus.Status = STATUS_CANCELLED;
|
||||||
|
@ -79,6 +81,10 @@ DEQUEUE_BOILERPLATE
|
||||||
*/
|
*/
|
||||||
|
|
||||||
InitializeListHead(&Irp->Tail.Overlay.ListEntry);
|
InitializeListHead(&Irp->Tail.Overlay.ListEntry);
|
||||||
|
|
||||||
|
Unlock(theLock);
|
||||||
|
|
||||||
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue