diff --git a/reactos/drivers/fs/np/rw.c b/reactos/drivers/fs/np/rw.c index f7ff3a5b0b1..c52403b8e69 100644 --- a/reactos/drivers/fs/np/rw.c +++ b/reactos/drivers/fs/np/rw.c @@ -102,7 +102,10 @@ NpfsRead(PDEVICE_OBJECT DeviceObject, if (Fcb->ReadDataAvailable == 0) { KeResetEvent(&Fcb->Event); - KeSetEvent(&WriterFcb->Event, IO_NO_INCREMENT, FALSE); + if (Fcb->PipeState == FILE_PIPE_CONNECTED_STATE) + { + KeSetEvent(&WriterFcb->Event, IO_NO_INCREMENT, FALSE); + } KeReleaseSpinLock(&Fcb->DataListLock, OldIrql); if (Information > 0) { @@ -190,7 +193,10 @@ NpfsRead(PDEVICE_OBJECT DeviceObject, if (Information > 0) { - KeSetEvent(&WriterFcb->Event, IO_NO_INCREMENT, FALSE); + if (Fcb->PipeState == FILE_PIPE_CONNECTED_STATE) + { + KeSetEvent(&WriterFcb->Event, IO_NO_INCREMENT, FALSE); + } break; } }