diff options
author | Longhaox Lee <longhaox.lee@intel.com> | 2025-02-14 16:44:06 +0800 |
---|---|---|
committer | Liming Gao <gaoliming@byosoft.com.cn> | 2025-02-21 08:50:36 +0800 |
commit | fbe0805b2091393406952e84724188f8c1941837 (patch) | |
tree | f0ddf2aa9c2ca88b92e26266bc6ac1790d1e3d93 | |
parent | 0192f2d7cb3098d5cf1a2ed25874f47a08001de7 (diff) | |
download | edk2-fbe0805b2091393406952e84724188f8c1941837.tar.gz |
MdeModulePkg/HiiDatabaseDxe: Remove buffer error for string default.edk2-stable202502
Remove efivarstore IFR buffer error when string load default.
In the case of varstore type IFR, it will be NULL,
just break into next opcode process.
Resolve issue from commit cbe8a09dbac5c39d24ce5c4b9e7d44607f6c23da
varstore type IFR string might return status error
while execute ExtractConfig function.
Signed-off-by: Longhao Lee <longhaox.lee@intel.com>
-rw-r--r-- | MdeModulePkg/Universal/HiiDatabaseDxe/ConfigRouting.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigRouting.c b/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigRouting.c index b71b447f5f..c9aabaa3da 100644 --- a/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigRouting.c +++ b/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigRouting.c @@ -3016,6 +3016,10 @@ ParseIfrData ( goto Done;
}
+ if (IfrEfiVarStoreTmp == NULL) {
+ break;
+ }
+
//
// Set default value base on the DefaultId list get from IFR data.
//
@@ -3030,11 +3034,6 @@ ParseIfrData ( goto Done;
}
- if (IfrEfiVarStoreTmp == NULL) {
- Status = EFI_OUT_OF_RESOURCES;
- goto Done;
- }
-
FindQuestionDefaultSetting (DefaultData.DefaultId, IfrEfiVarStoreTmp, &(IfrString->Question), (VOID *)StringData, VarWidth, QuestionReferBitField);
if ((DefaultData.Value.string != 0) && (StringData != NULL)) {
DefaultData.Value.string = InternalHiiSetString (HiiHandle, 0, StringData, NULL);
|