Don't free AsyncData if we're still using it

svn path=/trunk/; revision=12339
This commit is contained in:
Gé van Geldorp 2004-12-26 14:47:57 +00:00
parent 65c509fce1
commit aa94246f81

View file

@ -1865,6 +1865,7 @@ VOID SockProcessAsyncSelect(PSOCKET_INFORMATION Socket, PASYNC_DATA AsyncData)
VOID SockProcessQueuedAsyncSelect(PVOID Context, PIO_STATUS_BLOCK IoStatusBlock)
{
PASYNC_DATA AsyncData = Context;
BOOL FreeContext = TRUE;
PSOCKET_INFORMATION Socket;
/* Get the Socket */
@ -1877,12 +1878,16 @@ VOID SockProcessQueuedAsyncSelect(PVOID Context, PIO_STATUS_BLOCK IoStatusBlock)
/* Do the actuall select, if needed */
if ((Socket->SharedData.AsyncEvents & (~Socket->SharedData.AsyncDisabledEvents))) {
SockProcessAsyncSelect(Socket, AsyncData);
FreeContext = FALSE;
}
}
}
/* Free the Context */
if (FreeContext) {
HeapFree(GetProcessHeap(), 0, AsyncData);
}
return;
}