[prev in list] [next in list] [prev in thread] [next in thread]
List: ros-diffs
Subject: [ros-diffs] [ekohl] 21757: An attempt to read from a
From: ekohl () svn ! reactos ! org
Date: 2006-04-30 7:47:08
Message-ID: 200604300747.k3U7lCFO028485 () mailhost ! geldorp ! nl
[Download RAW message or body]
Author: ekohl
Date: Sun Apr 30 11:47:07 2006
New Revision: 21757
URL: http://svn.reactos.ru/svn/reactos?rev=21757&view=rev
Log:
An attempt to read from a not-yet-connected pipe must fail. This fixes a Wine \
testcase.
Modified:
trunk/reactos/drivers/filesystems/np/rw.c
Modified: trunk/reactos/drivers/filesystems/np/rw.c
URL: http://svn.reactos.ru/svn/reactos/trunk/reactos/drivers/filesystems/np/rw.c?rev=21757&r1=21756&r2=21757&view=diff
==============================================================================
--- trunk/reactos/drivers/filesystems/np/rw.c (original)
+++ trunk/reactos/drivers/filesystems/np/rw.c Sun Apr 30 11:47:07 2006
@@ -318,6 +318,14 @@
Fcb = FileObject->FsContext;
Context = (PNPFS_CONTEXT)&Irp->Tail.Overlay.DriverContext;
+ if (Fcb->OtherSide == NULL && Fcb->PipeState == FILE_PIPE_LISTENING_STATE)
+ {
+ DPRINT("Pipe is NOT yet connected!\n");
+ Status = STATUS_PIPE_LISTENING;
+ Irp->IoStatus.Information = 0;
+ goto done;
+ }
+
if (Fcb->Data == NULL)
{
DPRINT1("Pipe is NOT readable!\n");
@@ -529,7 +537,7 @@
}
Irp->IoStatus.Information = Information;
Irp->IoStatus.Status = Status;
-
+
ASSERT(IoGetCurrentIrpStackLocation(Irp)->FileObject != NULL);
if (IoIsOperationSynchronous(Irp))
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic