From d6823d52cf5bcb31a74c898368d966335721704e Mon Sep 17 00:00:00 2001 From: Cameron Gutman Date: Sun, 10 Aug 2008 11:23:05 +0000 Subject: [PATCH] - Move check for NULL FCB before trying to access it - Should fix a random crash I got when testing my web server svn path=/branches/aicom-network-fixes/; revision=35260 --- drivers/network/afd/afd/select.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/drivers/network/afd/afd/select.c b/drivers/network/afd/afd/select.c index ba22a3d2fb2..1888340cd3d 100644 --- a/drivers/network/afd/afd/select.c +++ b/drivers/network/afd/afd/select.c @@ -392,6 +392,11 @@ VOID PollReeval( PAFD_DEVICE_EXTENSION DeviceExt, PFILE_OBJECT FileObject ) { /* Take care of any event select signalling */ FCB = (PAFD_FCB)FileObject->FsContext; + if( !FCB ) { + KeReleaseSpinLock( &DeviceExt->Lock, OldIrql ); + return; + } + /* Not sure if i can do this at DISPATCH_LEVEL ... try it at passive */ AFD_DbgPrint(MID_TRACE,("Current State: %x, Events Fired: %x, " "Select Triggers %x\n", @@ -402,11 +407,6 @@ VOID PollReeval( PAFD_DEVICE_EXTENSION DeviceExt, PFILE_OBJECT FileObject ) { EventSelect = FCB->EventSelect; } - if( !FCB ) { - KeReleaseSpinLock( &DeviceExt->Lock, OldIrql ); - return; - } - /* Now signal normal select irps */ ThePollEnt = DeviceExt->Polls.Flink;