summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c
diff options
context:
space:
mode:
authorlgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524>2009-04-13 06:05:15 +0000
committerlgao4 <lgao4@6f19259b-4bc3-4df7-8a09-765794883524>2009-04-13 06:05:15 +0000
commit7e3bcccb0eed449e95c18b01ae8cbace1a759d01 (patch)
tree1370553214b662d7cf0a96b0cfd3bd592bd86132 /MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c
parent3f07728f2a047dc3e16ea622aec8e1a62b8c8411 (diff)
downloadedk2-platforms-7e3bcccb0eed449e95c18b01ae8cbace1a759d01.tar.xz
Update UefiHiiLib to support new defined IFR related HII APIs.
Apply new defined IFR related HII APIs in PlatOverMngr, DriverSample, IScsiDxe and Setup drivers. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@8066 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c')
-rw-r--r--MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c37
1 files changed, 11 insertions, 26 deletions
diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c b/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c
index 90ab529ef3..e612d4f855 100644
--- a/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c
+++ b/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c
@@ -323,40 +323,25 @@ InitializeConfigHdr (
IN OUT FORMSET_STORAGE *Storage
)
{
- EFI_STATUS Status;
- UINTN StrBufferLen;
CHAR16 *Name;
-
+
if (Storage->Type == EFI_HII_VARSTORE_BUFFER) {
Name = Storage->Name;
} else {
Name = NULL;
}
-
- StrBufferLen = 0;
- Status = ConstructConfigHdr (
- Storage->ConfigHdr,
- &StrBufferLen,
- &Storage->Guid,
- Name,
- FormSet->DriverHandle
- );
- if (Status == EFI_BUFFER_TOO_SMALL) {
- Storage->ConfigHdr = AllocateZeroPool (StrBufferLen);
- Status = ConstructConfigHdr (
- Storage->ConfigHdr,
- &StrBufferLen,
- &Storage->Guid,
- Name,
- FormSet->DriverHandle
- );
- }
-
- if (EFI_ERROR (Status)) {
- return Status;
+
+ Storage->ConfigHdr = HiiConstructConfigHdr (
+ &Storage->Guid,
+ Name,
+ FormSet->DriverHandle
+ );
+
+ if (Storage->ConfigHdr == NULL) {
+ return EFI_NOT_FOUND;
}
- Storage->ConfigRequest = AllocateCopyPool (StrBufferLen, Storage->ConfigHdr);
+ Storage->ConfigRequest = AllocateCopyPool (StrSize (Storage->ConfigHdr), Storage->ConfigHdr);
Storage->SpareStrLen = 0;
return EFI_SUCCESS;