From 39a0bb1742680aa354abaf98d2971d144be01109 Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Sun, 21 Sep 2008 14:43:43 +0000 Subject: [PATCH] - Merge aicom-network-fixes up to r36381 svn path=/trunk/; revision=36382 --- reactos/drivers/network/afd/afd/connect.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/reactos/drivers/network/afd/afd/connect.c b/reactos/drivers/network/afd/afd/connect.c index 8759aca017d..4c02da62f56 100644 --- a/reactos/drivers/network/afd/afd/connect.c +++ b/reactos/drivers/network/afd/afd/connect.c @@ -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)); -- 2.17.1