]> git.proxmox.com Git - mirror_edk2.git/blobdiff - IntelFrameworkModulePkg/Library/GenericBdsLib/BdsMisc.c
Add check to avoid null pointer deference.
[mirror_edk2.git] / IntelFrameworkModulePkg / Library / GenericBdsLib / BdsMisc.c
index 4ea30bdf7defb1fa8e5356a80d24629d1da46b3d..7b3f2050ae40f183756103d580e31d1e13e63051 100644 (file)
@@ -217,6 +217,9 @@ BdsLibRegisterNewOption (
   UINT16                    BootOrderEntry;\r
   UINTN                     OrderItemNum;\r
 \r
+  if (DevicePath == NULL) {\r
+    return EFI_INVALID_PARAMETER;\r
+  }\r
 \r
   OptionPtr             = NULL;\r
   OptionSize            = 0;\r
@@ -1551,7 +1554,9 @@ SetVariableAndReportStatusCodeOnError (
       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