diff options
author | Dandan Bi <dandan.bi@intel.com> | 2015-08-03 09:44:04 +0000 |
---|---|---|
committer | dandanbi <dandanbi@Edk2> | 2015-08-03 09:44:04 +0000 |
commit | a0973dcb7730fffd66dfd9f25e4be2ea399a00c5 (patch) | |
tree | df5ed349b85da08fcc8d9e6b2a90435fc2316879 | |
parent | c4a59af8c1f154a5203da16378fb90f93f3fb3ba (diff) | |
download | edk2-platforms-a0973dcb7730fffd66dfd9f25e4be2ea399a00c5.tar.xz |
MdeModulePkg:Fix the issue FindQuestionFromProgress in SetupBrowserDxe is broken
If the storage of the question is EFI_HII_VARSTORE_BUFFER/EFI_HII_VARSTORE_EFI_VARIABLE_BUFFER,
in SetupBrowserDxe the configuration stings contain uppercase,but HiiDataBaseDxe generates the
ConfigResp string in lowercase,they mismatch,so FindQuestionFromProgress function is broken.
Now convert the configuration string in SetupBrowserDxe to lowercase to fix this issue.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18143 6f19259b-4bc3-4df7-8a09-765794883524
-rw-r--r-- | MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c | 1 | ||||
-rw-r--r-- | MdeModulePkg/Universal/SetupBrowserDxe/Setup.h | 13 |
2 files changed, 14 insertions, 0 deletions
diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c b/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c index 953e3a5071..8e8607d4c0 100644 --- a/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c +++ b/MdeModulePkg/Universal/SetupBrowserDxe/IfrParse.c @@ -715,6 +715,7 @@ InitializeRequestElement ( Question->VarStoreInfo.VarOffset,
Question->StorageWidth
);
+ HiiToLower(RequestElement);
Question->BlockName = AllocateCopyPool ((StrLen + 1) * sizeof (CHAR16), RequestElement);
} else {
StrLen = UnicodeSPrint (RequestElement, 30 * sizeof (CHAR16), L"&%s", Question->VariableName);
diff --git a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.h b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.h index cfd81334d9..1238197535 100644 --- a/MdeModulePkg/Universal/SetupBrowserDxe/Setup.h +++ b/MdeModulePkg/Universal/SetupBrowserDxe/Setup.h @@ -1849,4 +1849,17 @@ ReconnectController ( IN EFI_HANDLE DriverHandle
);
+/**
+ Converts the unicode character of the string from uppercase to lowercase.
+ This is a internal function.
+
+ @param ConfigString String to be converted
+
+**/
+VOID
+EFIAPI
+HiiToLower (
+ IN EFI_STRING ConfigString
+ );
+
#endif
|