Do only signal the other side of the pipe if the pipe is connected.
Modified: trunk/reactos/drivers/fs/np/rw.c

Modified: trunk/reactos/drivers/fs/np/rw.c
--- trunk/reactos/drivers/fs/np/rw.c	2005-02-27 17:03:00 UTC (rev 13766)
+++ trunk/reactos/drivers/fs/np/rw.c	2005-02-27 20:38:36 UTC (rev 13767)
@@ -102,7 +102,10 @@
       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 @@
 
 	  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;
 	    }
 	}