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/net…
==============================================================================
--- 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;