From dc5f3e019568c30ff966a6796a35ecc35247f78c Mon Sep 17 00:00:00 2001 From: Rex Jolliff Date: Tue, 20 Oct 1998 05:56:26 +0000 Subject: [PATCH] Fixed synchronous I/O bug in ZwWriteFile svn path=/trunk/; revision=74 --- reactos/ntoskrnl/io/rw.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/reactos/ntoskrnl/io/rw.c b/reactos/ntoskrnl/io/rw.c index e7ed56101df..c45d729f5af 100644 --- a/reactos/ntoskrnl/io/rw.c +++ b/reactos/ntoskrnl/io/rw.c @@ -112,7 +112,7 @@ NTSTATUS ZwReadFile(HANDLE FileHandle, DPRINT("FileObject->DeviceObject %x\n",FileObject->DeviceObject); Status = IoCallDriver(FileObject->DeviceObject,Irp); - if (Status == STATUS_PENDING) + if (Status == STATUS_PENDING && (FileObject->Flags & FO_SYNCHRONOUS_IO)) { KeWaitForSingleObject(&Event,Executive,KernelMode,FALSE,NULL); Status = Irp->IoStatus.Status; @@ -198,6 +198,7 @@ NTSTATUS ZwWriteFile(HANDLE FileHandle, KeWaitForSingleObject(&Event,Executive,KernelMode,FALSE,NULL); Status = Irp->IoStatus.Status; } + return(Status); }