- Merge aicom-network-fixes up to r36381

svn path=/trunk/; revision=36382
This commit is contained in:
Cameron Gutman 2008-09-21 14:43:43 +00:00
parent 70f9181595
commit 39a0bb1742

View file

@ -77,6 +77,11 @@ static NTSTATUS NTAPI StreamSocketConnectComplete
AFD_DbgPrint(MID_TRACE,("Called: FCB %x, FO %x\n",
Context, FCB->FileObject));
if( Irp->Cancel ) {
if( FCB ) FCB->ConnectIrp.InFlightRequest = NULL;
return STATUS_CANCELLED;
}
/* I was wrong about this before as we can have pending writes to a not
* yet connected socket */
if( !SocketAcquireStateLock( FCB ) ) return STATUS_FILE_CLOSED;
@ -84,6 +89,8 @@ static NTSTATUS NTAPI StreamSocketConnectComplete
AFD_DbgPrint(MID_TRACE,("Irp->IoStatus.Status = %x\n",
Irp->IoStatus.Status));
FCB->ConnectIrp.InFlightRequest = NULL;
if( NT_SUCCESS(Irp->IoStatus.Status) ) {
FCB->PollState |= AFD_EVENT_CONNECT | AFD_EVENT_SEND;
AFD_DbgPrint(MID_TRACE,("Going to connected state %d\n", FCB->State));