Check the local variable 'NameSpace' before use it.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dandan Bi <[email protected]>
---
MdeModulePkg/Universal/HiiDatabaseDxe/ConfigKeywordHandler.c | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigKeywordHandler.c
b/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigKeywordHandler.c
index eac7717..e88a0c4 100644
--- a/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigKeywordHandler.c
+++ b/MdeModulePkg/Universal/HiiDatabaseDxe/ConfigKeywordHandler.c
@@ -2850,10 +2850,11 @@ EfiConfigKeywordHandlerSetData (
Status = ExtractNameSpace (StringPtr, &NameSpace, &NextStringPtr);
if (EFI_ERROR (Status)) {
*ProgressErr = KEYWORD_HANDLER_MALFORMED_STRING;
goto Done;
}
+ ASSERT (NameSpace != NULL);
//
// 1.1 Check whether the input namespace is valid.
//
if (AsciiStrnCmp(NameSpace, UEFI_CONFIG_LANG, AsciiStrLen
(UEFI_CONFIG_LANG)) != 0) {
*ProgressErr = KEYWORD_HANDLER_UNDEFINED_PROCESSING_ERROR;
@@ -3134,13 +3135,15 @@ EfiConfigKeywordHandlerGetData (
return Status;
}
//
// 1.1 Check whether the input namespace is valid.
//
- if (AsciiStrnCmp(NameSpace, UEFI_CONFIG_LANG, AsciiStrLen
(UEFI_CONFIG_LANG)) != 0) {
- *ProgressErr = KEYWORD_HANDLER_UNDEFINED_PROCESSING_ERROR;
- return EFI_INVALID_PARAMETER;
+ if (NameSpace != NULL){
+ if (AsciiStrnCmp(NameSpace, UEFI_CONFIG_LANG, AsciiStrLen
(UEFI_CONFIG_LANG)) != 0) {
+ *ProgressErr = KEYWORD_HANDLER_UNDEFINED_PROCESSING_ERROR;
+ return EFI_INVALID_PARAMETER;
+ }
}
if (KeywordString != NULL) {
//
// Use temp string to avoid changing input string buffer.
--
1.9.5.msysgit.1
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel