//\r
// If ConfigHdr has name field and varstore not has name, return FALSE.\r
//\r
- if (Name == NULL && StrStr (ConfigHdr, L"NAME=&") == NULL) {\r
+ if (Name == NULL && ConfigHdr != NULL && StrStr (ConfigHdr, L"NAME=&") == NULL) {\r
return FALSE;\r
}\r
\r
Link = GetFirstNode (&gBrowserStorageList);\r
while (!IsNull (&gBrowserStorageList, Link)) {\r
BrowserStorage = BROWSER_STORAGE_FROM_LINK (Link);\r
+ Link = GetNextNode (&gBrowserStorageList, Link);\r
\r
if ((BrowserStorage->Type == StorageType) && CompareGuid (&BrowserStorage->Guid, StorageGuid)) {\r
- if (StorageType == EFI_HII_VARSTORE_NAME_VALUE && BrowserStorage->HiiHandle == HiiHandle) {\r
- return BrowserStorage;\r
+ if (StorageType == EFI_HII_VARSTORE_NAME_VALUE) {\r
+ if (BrowserStorage->HiiHandle == HiiHandle) {\r
+ return BrowserStorage;\r
+ }\r
+\r
+ continue;\r
}\r
\r
+ ASSERT (StorageName != NULL);\r
if (StrCmp (BrowserStorage->Name, StorageName) == 0) {\r
if (StorageType == EFI_HII_VARSTORE_EFI_VARIABLE || StorageType == EFI_HII_VARSTORE_EFI_VARIABLE_BUFFER) {\r
return BrowserStorage;\r
}\r
}\r
}\r
-\r
- //\r
- // Get Next Storage.\r
- //\r
- Link = GetNextNode (&gBrowserStorageList, Link);\r
}\r
\r
return NULL;\r