Name = Storage->Name;\r
}\r
\r
- if (IsConfigHdrMatch (ConfigString, &Storage->Guid, Name)) {\r
+ if (HiiIsConfigHdrMatch (ConfigString, &Storage->Guid, Name)) {\r
return Storage;\r
}\r
\r
FRAMEWORK_EFI_IFR_DATA_ARRAY *IfrDataArray;\r
FRAMEWORK_EFI_IFR_DATA_ENTRY *IfrDataEntry;\r
UINTN BrowserDataSize;\r
- FORMSET_STORAGE *BufferStorage;\r
- EFI_STATUS Status;\r
+ FORMSET_STORAGE *BufferStorage;\r
UINTN Size;\r
- UINTN StringSize;\r
EFI_STRING String;\r
\r
*NvMapAllocated = FALSE;\r
break;\r
\r
case EFI_IFR_TYPE_STRING:\r
- StringSize = 0;\r
- Status = HiiLibGetString (ConfigAccess->ThunkContext->UefiHiiHandle, Value->string, String, &StringSize);\r
- ASSERT (Status == EFI_BUFFER_TOO_SMALL);\r
-\r
- String = AllocateZeroPool (StringSize);\r
- ASSERT (String != NULL);\r
-\r
- Status = HiiLibGetString (ConfigAccess->ThunkContext->UefiHiiHandle, Value->string, String, &StringSize);\r
- ASSERT_EFI_ERROR (Status);\r
+ if (Value->string == 0) {\r
+ Size = 0;\r
+ } else {\r
+ String = HiiGetString (ConfigAccess->ThunkContext->UefiHiiHandle, Value->string, NULL);\r
+ ASSERT (String != NULL);\r
\r
- Size = StringSize;\r
+ Size = StrSize (String);\r
+ }\r
break;\r
\r
default:\r
IfrDataArray->NvRamMap = ConfigAccess->ThunkContext->NvMapOverride;\r
}\r
\r
- Status = GetBrowserData (&BufferStorage->Guid, BufferStorage->Name, &BrowserDataSize, IfrDataArray->NvRamMap);\r
- ASSERT_EFI_ERROR (Status);\r
-\r
+ ASSERT (HiiGetBrowserData (&BufferStorage->Guid, BufferStorage->Name, BrowserDataSize, (UINT8 *) IfrDataArray->NvRamMap));\r
IfrDataEntry = (FRAMEWORK_EFI_IFR_DATA_ENTRY *) (IfrDataArray + 1);\r
\r
switch (Type) {\r
break;\r
\r
case EFI_IFR_TYPE_STRING:\r
- ASSERT (String != NULL);\r
- StrCpy ((CHAR16 *) &IfrDataEntry->Data, String);\r
- FreePool (String);\r
+ if (Size != 0) {\r
+ ASSERT (String != NULL);\r
+ StrCpy ((CHAR16 *) &IfrDataEntry->Data, String);\r
+ FreePool (String);\r
+ }\r
break;\r
default:\r
ASSERT (FALSE);\r
IN EFI_QUESTION_ID QuestionId\r
)\r
{\r
- FORMSET_STORAGE *BufferStorage;\r
- EFI_STATUS Status;\r
- UINTN BrowserDataSize;\r
+ FORMSET_STORAGE *BufferStorage;\r
+ BOOLEAN CheckFlag;\r
+ UINTN BrowserDataSize;\r
\r
if (ConfigAccess->ThunkContext->NvMapOverride != NULL) {\r
\r
\r
BrowserDataSize = BufferStorage->Size;\r
\r
- Status = SetBrowserData (&BufferStorage->Guid, BufferStorage->Name, BrowserDataSize, ConfigAccess->ThunkContext->NvMapOverride, NULL);\r
- ASSERT_EFI_ERROR (Status);\r
+ CheckFlag = HiiSetBrowserData (&BufferStorage->Guid, BufferStorage->Name, BrowserDataSize, ConfigAccess->ThunkContext->NvMapOverride, NULL);\r
+ ASSERT (CheckFlag);\r
}\r
\r
}\r
if (EFI_ERROR (Status)) {\r
if (Packet != NULL) {\r
do {\r
- IfrLibCreatePopUp (1, &Key, Packet->String);\r
+ CreatePopUp (EFI_LIGHTGRAY | EFI_BACKGROUND_BLUE, &Key, Packet->String, NULL);\r
} while (Key.UnicodeChar != CHAR_CARRIAGE_RETURN);\r
}\r
//\r