mirror of
https://github.com/reactos/reactos.git
synced 2025-05-18 00:31:27 +00:00
[NTOSKRNL]
Properly queue the IRP in IoCancelFileOpen() svn path=/trunk/; revision=58245
This commit is contained in:
parent
48c45bbe68
commit
55be9e4adc
1 changed files with 7 additions and 2 deletions
|
@ -2497,6 +2497,7 @@ IoCancelFileOpen(IN PDEVICE_OBJECT DeviceObject,
|
|||
{
|
||||
PIRP Irp;
|
||||
KEVENT Event;
|
||||
KIRQL OldIrql;
|
||||
NTSTATUS Status;
|
||||
PIO_STACK_LOCATION Stack;
|
||||
|
||||
|
@ -2527,7 +2528,8 @@ IoCancelFileOpen(IN PDEVICE_OBJECT DeviceObject,
|
|||
Stack->MajorFunction = IRP_MJ_CLEANUP;
|
||||
Stack->FileObject = FileObject;
|
||||
|
||||
// FIXME: Put on top of IRPs list of the thread
|
||||
/* Put on top of IRPs list of the thread */
|
||||
IopQueueIrpToThread(Irp);
|
||||
|
||||
/* Call the driver */
|
||||
Status = IoCallDriver(DeviceObject, Irp);
|
||||
|
@ -2537,7 +2539,10 @@ IoCancelFileOpen(IN PDEVICE_OBJECT DeviceObject,
|
|||
KernelMode, FALSE, NULL);
|
||||
}
|
||||
|
||||
// FIXME: Remove from IRPs list
|
||||
/* Remove from IRPs list */
|
||||
KeRaiseIrql(APC_LEVEL, &OldIrql);
|
||||
IopUnQueueIrpFromThread(Irp);
|
||||
KeLowerIrql(OldIrql);
|
||||
|
||||
/* Free the IRP */
|
||||
IoFreeIrp(Irp);
|
||||
|
|
Loading…
Reference in a new issue