ShellPkg: Correct 3 places where memory was not being properly released by the shell.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jaben Carsey <jaben.carsey@intel.com>
Reviewed-by: Erik Bjorge <erik.c.bjorge@intel.com>
Reviewed-by: Liu, Jiang A <jiang.a.liu@intel.com>

git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@13938 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
jcarsey
2012-11-13 16:08:52 +00:00
parent bad7344668
commit 3f869579a4
3 changed files with 8 additions and 5 deletions

View File

@ -129,7 +129,7 @@ ShellCommandLibDestructor (
)
{
SHELL_COMMAND_INTERNAL_LIST_ENTRY *Node;
COMMAND_LIST *Node2;
ALIAS_LIST *Node2;
SCRIPT_FILE_LIST *Node3;
SHELL_MAP_LIST *MapNode;
//
@ -144,13 +144,14 @@ ShellCommandLibDestructor (
}
//
// enumerate through the init command list and free all memory
// enumerate through the alias list and free all memory
//
while (!IsListEmpty (&mAliasList.Link)) {
Node2 = (COMMAND_LIST *)GetFirstNode(&mAliasList.Link);
Node2 = (ALIAS_LIST *)GetFirstNode(&mAliasList.Link);
RemoveEntryList(&Node2->Link);
SHELL_FREE_NON_NULL(Node2->CommandString);
FreePool(Node2);
SHELL_FREE_NON_NULL(Node2->Alias);
SHELL_FREE_NON_NULL(Node2);
DEBUG_CODE(Node2 = NULL;);
}