ASSERT (TempBuffer != NULL);\r
if ((BufferLen == Length) && (0 == CompareMem (Buffer, TempBuffer, Length))) {\r
*Found = TRUE;\r
+ FreePool (TempBuffer);\r
+ TempBuffer = NULL;\r
return EFI_SUCCESS;\r
} else {\r
FreePool (TempBuffer);\r
if (IsThisVarstore((VOID *)&IfrVarStore->Guid, VarStoreName, ConfigHdr)) {\r
FindVarstore = TRUE;\r
goto Done;\r
+ } else {\r
+ FreePool (VarStoreName);\r
+ VarStoreName = NULL;\r
}\r
break;\r
\r
if (IsThisVarstore (&IfrEfiVarStore->Guid, VarStoreName, ConfigHdr)) {\r
FindVarstore = TRUE;\r
goto Done;\r
+ } else {\r
+ FreePool (VarStoreName);\r
+ VarStoreName = NULL;\r
}\r
break;\r
\r
FirstOneOfOption = FALSE;\r
VarStoreId = 0;\r
FirstOrderedList = FALSE;\r
+ VarStoreName = NULL;\r
ZeroMem (&DefaultData, sizeof (IFR_DEFAULT_DATA));\r
\r
//\r
VarStorageData->Name = VarStoreName;\r
VarStorageData->Type = EFI_HII_VARSTORE_BUFFER;\r
VarStoreId = IfrVarStore->VarStoreId;\r
+ } else {\r
+ FreePool (VarStoreName);\r
+ VarStoreName = NULL;\r
}\r
break;\r
\r
VarStorageData->Name = VarStoreName;\r
VarStorageData->Type = EFI_HII_VARSTORE_EFI_VARIABLE_BUFFER;\r
VarStoreId = IfrEfiVarStore->VarStoreId;\r
+ } else {\r
+ FreePool (VarStoreName);\r
+ VarStoreName = NULL;\r
}\r
break;\r
\r
if (EFI_ERROR (Status)) {\r
goto Done;\r
}\r
-\r
+ FreePool (TmpBuffer);\r
StringPtr += Length;\r
if (*StringPtr != 0 && *StringPtr != L'&') {\r
goto Done;\r
}\r
FreePool (BlockData);\r
}\r
+ if (VarStorageData ->Name != NULL) {\r
+ FreePool (VarStorageData ->Name);\r
+ VarStorageData ->Name = NULL;\r
+ }\r
FreePool (VarStorageData);\r
}\r
\r