Free all messages in LpcpDeletePort.

svn path=/trunk/; revision=17882
This commit is contained in:
Hartmut Birr 2005-09-16 15:18:23 +00:00
parent 873253a8e9
commit bae216e9d2

View file

@ -87,9 +87,27 @@ LpcpClosePort (PVOID ObjectBody, ULONG HandleCount)
VOID STDCALL
LpcpDeletePort (PVOID ObjectBody)
{
// PEPORT Port = (PEPORT)ObjectBody;
PLIST_ENTRY Entry;
PQUEUEDMESSAGE Message;
// DPRINT1("Deleting port %x\n", Port);
PEPORT Port = (PEPORT)ObjectBody;
DPRINT("Deleting port %x\n", Port);
/* Free all waiting messages */
while (!IsListEmpty(&Port->QueueListHead))
{
Entry = RemoveHeadList(&Port->QueueListHead);
Message = CONTAINING_RECORD (Entry, QUEUEDMESSAGE, QueueListEntry);
ExFreePool(Message);
}
while (!IsListEmpty(&Port->ConnectQueueListHead))
{
Entry = RemoveHeadList(&Port->ConnectQueueListHead);
Message = CONTAINING_RECORD (Entry, QUEUEDMESSAGE, QueueListEntry);
ExFreePool(Message);
}
}