UINT16 BootOrderEntry;\r
UINTN OrderItemNum;\r
\r
+ if (DevicePath == NULL) {\r
+ return EFI_INVALID_PARAMETER;\r
+ }\r
\r
OptionPtr = NULL;\r
OptionSize = 0;\r
SetVariableStatus->SetStatus = Status;\r
SetVariableStatus->Attributes = Attributes;\r
CopyMem (SetVariableStatus + 1, VariableName, NameSize);\r
- CopyMem (((UINT8 *) (SetVariableStatus + 1)) + NameSize, Data, DataSize);\r
+ if ((Data != NULL) && (DataSize != 0)) {\r
+ CopyMem (((UINT8 *) (SetVariableStatus + 1)) + NameSize, Data, DataSize);\r
+ }\r
\r
REPORT_STATUS_CODE_EX (\r
EFI_ERROR_CODE,\r
IN BOOLEAN Iso639Language\r
)\r
{\r
- EFI_STATUS Status;\r
CHAR8 *Lang;\r
\r
//\r
// Find current Lang or PlatformLang from EFI Variable.\r
//\r
- Status = GetEfiGlobalVariable2 (LangName, (VOID **) &Lang, NULL);\r
+ GetEfiGlobalVariable2 (LangName, (VOID **) &Lang, NULL);\r
//\r
// If Lang or PlatformLang variable is not found,\r
// or it has been set to an unsupported value(not one of the supported language codes),\r
// set the default language code to it.\r
//\r
- if (EFI_ERROR (Status) || !IsLangInSupportedLangCodes (SupportedLang, Lang, Iso639Language)) {\r
+ if ((Lang == NULL) || !IsLangInSupportedLangCodes (SupportedLang, Lang, Iso639Language)) {\r
//\r
// The default language code should be one of the supported language codes.\r
//\r