From f61e4f12303cd5ededcc17697f383a1f879f8e20 Mon Sep 17 00:00:00 2001 From: Filip Navara Date: Mon, 8 Aug 2005 09:24:20 +0000 Subject: [PATCH] Revert part of #17156 and #17157 changes. svn path=/trunk/; revision=17195 --- reactos/drivers/fs/np/rw.c | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/reactos/drivers/fs/np/rw.c b/reactos/drivers/fs/np/rw.c index a1b7fd85dad..dc39215543f 100644 --- a/reactos/drivers/fs/np/rw.c +++ b/reactos/drivers/fs/np/rw.c @@ -398,25 +398,23 @@ NpfsRead(IN PDEVICE_OBJECT DeviceObject, { if (Fcb->ReadDataAvailable == 0) { + if (Fcb->PipeState == FILE_PIPE_CONNECTED_STATE) + { + ASSERT(Fcb->OtherSide != NULL); + KeSetEvent(&Fcb->OtherSide->WriteEvent, IO_NO_INCREMENT, FALSE); + } + if (Information > 0 && + (Fcb->Pipe->ReadMode != FILE_PIPE_BYTE_STREAM_MODE || + Fcb->PipeState != FILE_PIPE_CONNECTED_STATE)) + { + break; + } if (Fcb->PipeState != FILE_PIPE_CONNECTED_STATE) { DPRINT("PipeState: %x\n", Fcb->PipeState); - if (Fcb->PipeState == FILE_PIPE_LISTENING_STATE) - Status = STATUS_PIPE_LISTENING; - else - Status = STATUS_PIPE_DISCONNECTED; + Status = STATUS_PIPE_BROKEN; break; } - - ASSERT(Fcb->OtherSide != NULL); - KeSetEvent(&Fcb->OtherSide->WriteEvent, IO_NO_INCREMENT, FALSE); - - if (Information > 0 && - Fcb->Pipe->ReadMode != FILE_PIPE_BYTE_STREAM_MODE) - { - break; - } - ExReleaseFastMutex(&Fcb->DataListLock); if (IoIsOperationSynchronous(Irp)) {