Reviewed-by: Eric Dong <eric.d...@intel.com> -----Original Message----- From: Bi, Dandan Sent: Monday, August 24, 2015 1:28 PM To: Dong, Eric; Qiu, Shumin; edk2-devel@lists.01.org Subject: [patch] MdeModulePkg:Refine the code in HiiDatabaseDxe
Check the local variable 'NameSpace' before use it. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Dandan Bi <dandan...@intel.com> --- 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 edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel