Author: cgutman Date: Sun Sep 21 09:40:28 2008 New Revision: 36381
URL: http://svn.reactos.org/svn/reactos?rev=36381&view=rev Log: - Set the InFlightRequest to NULL when we complete
Modified: branches/aicom-network-fixes/drivers/network/afd/afd/connect.c
Modified: branches/aicom-network-fixes/drivers/network/afd/afd/connect.c URL: http://svn.reactos.org/svn/reactos/branches/aicom-network-fixes/drivers/netw... ============================================================================== --- branches/aicom-network-fixes/drivers/network/afd/afd/connect.c [iso-8859-1] (original) +++ branches/aicom-network-fixes/drivers/network/afd/afd/connect.c [iso-8859-1] Sun Sep 21 09:40:28 2008 @@ -77,12 +77,19 @@ 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;
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;