/** @file\r
+Helper functions for parsing GuidedSectionTools.txt\r
\r
-Copyright (c) 2007 - 2008, Intel Corporation \r
-All rights reserved. This program and the accompanying materials \r
-are licensed and made available under the terms and conditions of the BSD License \r
-which accompanies this distribution. The full text of the license may be found at \r
-http://opensource.org/licenses/bsd-license.php \r
- \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
+Copyright (c) 2007 - 2018, Intel Corporation. All rights reserved.<BR>\r
+This program and the accompanying materials\r
+are licensed and made available under the terms and conditions of the BSD License\r
+which accompanies this distribution. The full text of the license may be found at\r
+http://opensource.org/licenses/bsd-license.php\r
\r
-Module Name:\r
-\r
- ParseGuidedSectionTools.c\r
-\r
-Abstract:\r
-\r
- Helper functions for parsing GuidedSectionTools.txt\r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
**/\r
\r
ParsedGuidedSectionTools = ParseGuidedSectionToolsMemoryFile (MemoryFile);\r
\r
FreeMemoryFile (MemoryFile);\r
- \r
+\r
return ParsedGuidedSectionTools;\r
}\r
\r
GUID_SEC_TOOL_ENTRY *NewGuidTool;\r
\r
FirstGuidTool = NULL;\r
+ LastGuidTool = NULL;\r
\r
while (TRUE) {\r
NextLine = ReadMemoryFileLine (InputFile);\r
if (NextLine == NULL) {\r
break;\r
}\r
- \r
+\r
Status = StripInfDscStringInPlace (NextLine);\r
if (EFI_ERROR (Status)) {\r
+ free (NextLine);\r
break;\r
}\r
\r
if (NextLine[0] == '\0') {\r
+ free (NextLine);\r
continue;\r
}\r
\r
NewGuidTool->Name = CloneString(Tool->Strings[1]);\r
NewGuidTool->Path = CloneString(Tool->Strings[2]);\r
NewGuidTool->Next = NULL;\r
+\r
+ if (FirstGuidTool == NULL) {\r
+ FirstGuidTool = NewGuidTool;\r
+ } else {\r
+ LastGuidTool->Next = NewGuidTool;\r
+ }\r
+ LastGuidTool = NewGuidTool;\r
}\r
- if (FirstGuidTool == NULL) {\r
- FirstGuidTool = NewGuidTool;\r
- } else {\r
- LastGuidTool->Next = NewGuidTool;\r
- }\r
- LastGuidTool = NewGuidTool;\r
}\r
+ }\r
+\r
+ if (Tool != NULL) {\r
FreeStringList (Tool);\r
}\r
+ free (NextLine);\r
}\r
\r
return FirstGuidTool;\r