VOID\r
)\r
{\r
- BUFFER_SAFE_FREE (mValue);\r
+ ARRAY_SAFE_FREE (mValue);\r
}\r
\r
SConfigItem::SConfigItem (\r
{\r
SConfigInfo *Info;\r
\r
- BUFFER_SAFE_FREE (mName);\r
- BUFFER_SAFE_FREE (mGuid);\r
- BUFFER_SAFE_FREE (mId);\r
+ ARRAY_SAFE_FREE (mName);\r
+ ARRAY_SAFE_FREE (mGuid);\r
+ ARRAY_SAFE_FREE (mId);\r
while (mInfoStrList != NULL) {\r
Info = mInfoStrList;\r
mInfoStrList = mInfoStrList->mNext;\r
if (Guid != NULL) {\r
mGuid = *Guid;\r
} else {\r
- memset (&Guid, 0, sizeof (EFI_GUID));\r
+ memset (&mGuid, 0, sizeof (EFI_GUID));\r
}\r
if (StoreName != NULL) {\r
mVarStoreName = new CHAR8[strlen(StoreName) + 1];\r
if (Guid != NULL) {\r
mGuid = *Guid;\r
} else {\r
- memset (&Guid, 0, sizeof (EFI_GUID));\r
+ memset (&mGuid, 0, sizeof (EFI_GUID));\r
}\r
if (StoreName != NULL) {\r
mVarStoreName = new CHAR8[strlen(StoreName) + 1];\r
)\r
{\r
if (mVarStoreName != NULL) {\r
- delete mVarStoreName;\r
+ delete[] mVarStoreName;\r
}\r
\r
if (mVarStoreType == EFI_VFR_VARSTORE_NAME) {\r
}\r
}\r
\r
+ if (Index == EFI_FREE_VARSTORE_ID_BITMAP_SIZE) {\r
+ return EFI_VARSTORE_ID_INVALID;\r
+ }\r
+\r
for (Offset = 0, Mask = 0x80000000; Mask != 0; Mask >>= 1, Offset++) {\r
if ((mFreeVarStoreIdBitMap[Index] & Mask) == 0) {\r
mFreeVarStoreIdBitMap[Index] |= Mask;\r
)\r
{\r
if (mRefName != NULL) {\r
- delete mRefName;\r
+ delete[] mRefName;\r
}\r
}\r
\r
)\r
{\r
if (mRuleName != NULL) {\r
- delete mRuleName;\r
+ delete[] mRuleName;\r
}\r
}\r
\r
mVarTotalSize = Info.mVarTotalSize;\r
}\r
\r
+EFI_VARSTORE_INFO&\r
+EFI_VARSTORE_INFO::operator= (\r
+ IN CONST EFI_VARSTORE_INFO &Info\r
+ )\r
+{\r
+ if (this != &Info) {\r
+ mVarStoreId = Info.mVarStoreId;\r
+ mInfo.mVarName = Info.mInfo.mVarName;\r
+ mInfo.mVarOffset = Info.mInfo.mVarOffset;\r
+ mVarType = Info.mVarType;\r
+ mVarTotalSize = Info.mVarTotalSize;\r
+ }\r
+\r
+ return *this;\r
+}\r
+\r
BOOLEAN\r
EFI_VARSTORE_INFO::operator == (\r
IN EFI_VARSTORE_INFO *Info\r
}\r
}\r
\r
+ if (Index == EFI_FREE_QUESTION_ID_BITMAP_SIZE) {\r
+ return EFI_QUESTION_ID_INVALID;\r
+ }\r
+\r
for (Offset = 0, Mask = 0x80000000; Mask != 0; Mask >>= 1, Offset++) {\r
if ((mFreeQIdBitMap[Index] & Mask) == 0) {\r
mFreeQIdBitMap[Index] |= Mask;\r
)\r
{\r
if (mName != NULL) {\r
- delete mName;\r
+ delete[] mName;\r
}\r
\r
if (mVarIdStr != NULL) {\r
- delete mVarIdStr;\r
+ delete[] mVarIdStr;\r
}\r
}\r
\r
// Check the String package.\r
//\r
if (PkgHeader->Header.Type != EFI_HII_PACKAGE_STRINGS) {\r
- delete StringPtr;\r
+ delete[] StringPtr;\r
return NULL;\r
}\r
\r
//\r
Status = FindStringBlock(Current, StringId, &NameOffset, &BlockType);\r
if (Status != EFI_SUCCESS) {\r
- delete StringPtr;\r
+ delete[] StringPtr;\r
return NULL;\r
}\r
\r
break;\r
}\r
\r
- delete StringPtr;\r
+ delete[] StringPtr;\r
\r
return VarStoreName;\r
}\r