summaryrefslogtreecommitdiff
path: root/MdeModulePkg/Universal/HiiDatabaseDxe
diff options
context:
space:
mode:
authorEric Dong <eric.dong@intel.com>2015-05-19 09:22:59 +0000
committerydong10 <ydong10@Edk2>2015-05-19 09:22:59 +0000
commit5f25ead991ad34f5d11b6b7f5f6a50479142934f (patch)
tree518ba15feb93dc6444541f78b015499218f56c37 /MdeModulePkg/Universal/HiiDatabaseDxe
parentee50ff41a6bdb32bc6fb37f75a856047b97d4df6 (diff)
downloadedk2-platforms-5f25ead991ad34f5d11b6b7f5f6a50479142934f.tar.xz
MdeModulePkg: Enumerate all string packages in one driver when search the keyword.
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Eric Dong <eric.dong@intel.com> Reviewed-by: Liming Gao <liming.gao@intel.com> git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@17471 6f19259b-4bc3-4df7-8a09-765794883524
Diffstat (limited to 'MdeModulePkg/Universal/HiiDatabaseDxe')
-rw-r--r--MdeModulePkg/Universal/HiiDatabaseDxe/ConfigKeywordHandler.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigKeywordHandler.c b/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigKeywordHandler.c
index 1756c15ce8..60b5daa95b 100644
--- a/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigKeywordHandler.c
+++ b/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigKeywordHandler.c
@@ -1321,10 +1321,12 @@ GetStringIdFromRecord (
HII_STRING_PACKAGE_INSTANCE *StringPackage;
EFI_STATUS Status;
CHAR8 *Name;
+ UINT32 RetVal;
ASSERT (DatabaseRecord != NULL && NameSpace != NULL && KeywordValue != NULL);
PackageListNode = DatabaseRecord->PackageList;
+ RetVal = KEYWORD_HANDLER_NAMESPACE_ID_NOT_FOUND;
if (*NameSpace != NULL) {
Name = *NameSpace;
@@ -1338,7 +1340,8 @@ GetStringIdFromRecord (
if (AsciiStrnCmp(Name, StringPackage->StringPkgHdr->Language, AsciiStrLen (Name)) == 0) {
Status = GetStringIdFromString (StringPackage, KeywordValue, StringId);
if (EFI_ERROR (Status)) {
- return KEYWORD_HANDLER_KEYWORD_NOT_FOUND;
+ RetVal = KEYWORD_HANDLER_KEYWORD_NOT_FOUND;
+ continue;
} else {
if (*NameSpace == NULL) {
*NameSpace = AllocateCopyPool (AsciiStrSize (StringPackage->StringPkgHdr->Language), StringPackage->StringPkgHdr->Language);
@@ -1351,7 +1354,7 @@ GetStringIdFromRecord (
}
}
- return KEYWORD_HANDLER_NAMESPACE_ID_NOT_FOUND;
+ return RetVal;
}
/**