From e1d5086ebfb7404142cafd8f8a8f5eff4426631e Mon Sep 17 00:00:00 2001 From: Hartmut Birr Date: Tue, 5 Apr 2005 15:51:02 +0000 Subject: [PATCH] Changed back to IoBuildSynchronousFsdRequest. svn path=/trunk/; revision=14503 --- reactos/ntoskrnl/io/rw.c | 40 ++++++++++++++-------------------------- 1 file changed, 14 insertions(+), 26 deletions(-) diff --git a/reactos/ntoskrnl/io/rw.c b/reactos/ntoskrnl/io/rw.c index 1f632f187c3..8acddcae173 100644 --- a/reactos/ntoskrnl/io/rw.c +++ b/reactos/ntoskrnl/io/rw.c @@ -103,12 +103,13 @@ NtReadFile (IN HANDLE FileHandle, _SEH_TRY { - Irp = IoBuildAsynchronousFsdRequest(IRP_MJ_READ, - FileObject->DeviceObject, - Buffer, - Length, - ByteOffset, - IoStatusBlock); + Irp = IoBuildSynchronousFsdRequest(IRP_MJ_READ, + FileObject->DeviceObject, + Buffer, + Length, + ByteOffset, + EventObject, + IoStatusBlock); } _SEH_HANDLE { @@ -130,13 +131,6 @@ NtReadFile (IN HANDLE FileHandle, return NT_SUCCESS(Status) ? STATUS_INSUFFICIENT_RESOURCES : Status; } - Irp->UserEvent = EventObject; - if (FileObject->Flags & FO_SYNCHRONOUS_IO) - { - /* synchronous irp's are queued to requestor thread's irp cancel/cleanup list */ - IoQueueThreadIrp(Irp); - } - KeClearEvent(&FileObject->Event); /* Trigger FileObject/Event dereferencing */ @@ -283,12 +277,13 @@ NtWriteFile (IN HANDLE FileHandle, _SEH_TRY { - Irp = IoBuildAsynchronousFsdRequest(IRP_MJ_WRITE, - FileObject->DeviceObject, - Buffer, - Length, - ByteOffset, - IoStatusBlock); + Irp = IoBuildSynchronousFsdRequest(IRP_MJ_WRITE, + FileObject->DeviceObject, + Buffer, + Length, + ByteOffset, + EventObject, + IoStatusBlock); } _SEH_HANDLE { @@ -310,13 +305,6 @@ NtWriteFile (IN HANDLE FileHandle, return NT_SUCCESS(Status) ? STATUS_INSUFFICIENT_RESOURCES : Status; } - Irp->UserEvent = EventObject; - if (FileObject->Flags & FO_SYNCHRONOUS_IO) - { - /* synchronous irp's are queued to requestor thread's irp cancel/cleanup list */ - IoQueueThreadIrp(Irp); - } - KeClearEvent(&FileObject->Event); /* Trigger FileObject/Event dereferencing */