]> git.proxmox.com Git - mirror_edk2.git/commitdiff
MdeModulePkg: Refine the code in UiApp
authorDandan Bi <dandan.bi@intel.com>
Thu, 13 Aug 2015 00:58:56 +0000 (00:58 +0000)
committerdandanbi <dandanbi@Edk2>
Thu, 13 Aug 2015 00:58:56 +0000 (00:58 +0000)
Refine the code in UiApp to prevent the potential risk.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dandan Bi <dandan.bi@intel.com>
Reviewed-by: Qiu Shumin <shumin.qiu@intel.com>
Reviewed-by: Eric Dong <eric.dong@intel.com>
git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18216 6f19259b-4bc3-4df7-8a09-765794883524

MdeModulePkg/Application/UiApp/BootMaint/FileExplorer.c
MdeModulePkg/Application/UiApp/BootMaint/Variable.c

index b459fba5bb1bf2808ac05685c52f25a92a5f7f6a..e2e6b0335bef3372d048c3c8592e643adc35d388 100644 (file)
@@ -258,7 +258,6 @@ FileExplorerCallback (
 \r
   Status         = EFI_SUCCESS;\r
   Private        = FE_CALLBACK_DATA_FROM_THIS (This);\r
 \r
   Status         = EFI_SUCCESS;\r
   Private        = FE_CALLBACK_DATA_FROM_THIS (This);\r
-  *ActionRequest = EFI_BROWSER_ACTION_REQUEST_NONE;\r
 \r
   //\r
   // Retrieve uncommitted data from Form Browser\r
 \r
   //\r
   // Retrieve uncommitted data from Form Browser\r
index 4fe8c534eb073496a0d32a9a8b2bdab7c99e1794..8c10540854f02023b0869b67b814dd464b63f70c 100644 (file)
@@ -524,6 +524,7 @@ Var_UpdateErrorOutOption (
 \r
   @retval EFI_OUT_OF_RESOURCES If not enought memory to complete the operation.\r
   @retval EFI_SUCCESS          If function completes successfully.\r
 \r
   @retval EFI_OUT_OF_RESOURCES If not enought memory to complete the operation.\r
   @retval EFI_SUCCESS          If function completes successfully.\r
+  @return Others Errors        Return errors from call to gRT->GetVariable.\r
 \r
 **/\r
 EFI_STATUS\r
 \r
 **/\r
 EFI_STATUS\r
@@ -659,7 +660,10 @@ Var_UpdateDriverOption (
                   Buffer\r
                   );\r
   ASSERT_EFI_ERROR (Status);\r
                   Buffer\r
                   );\r
   ASSERT_EFI_ERROR (Status);\r
-  GetEfiGlobalVariable2 (L"DriverOrder", (VOID **) &DriverOrderList, &DriverOrderListSize);\r
+  Status = GetEfiGlobalVariable2 (L"DriverOrder", (VOID **) &DriverOrderList, &DriverOrderListSize);\r
+  if (EFI_ERROR (Status) || DriverOrderList == NULL){\r
+    return Status;\r
+  }\r
   NewDriverOrderList = AllocateZeroPool (DriverOrderListSize + sizeof (UINT16));\r
   ASSERT (NewDriverOrderList != NULL);\r
   CopyMem (NewDriverOrderList, DriverOrderList, DriverOrderListSize);\r
   NewDriverOrderList = AllocateZeroPool (DriverOrderListSize + sizeof (UINT16));\r
   ASSERT (NewDriverOrderList != NULL);\r
   CopyMem (NewDriverOrderList, DriverOrderList, DriverOrderListSize);\r
@@ -700,6 +704,7 @@ Var_UpdateDriverOption (
 \r
   @retval EFI_OUT_OF_RESOURCES If not enought memory to complete the operation.\r
   @retval EFI_SUCCESS          If function completes successfully.\r
 \r
   @retval EFI_OUT_OF_RESOURCES If not enought memory to complete the operation.\r
   @retval EFI_SUCCESS          If function completes successfully.\r
+  @return Others Errors        Return errors from call to gRT->GetVariable.\r
 \r
 **/\r
 EFI_STATUS\r
 \r
 **/\r
 EFI_STATUS\r
@@ -824,7 +829,10 @@ Var_UpdateBootOption (
                   );\r
   ASSERT_EFI_ERROR (Status);\r
 \r
                   );\r
   ASSERT_EFI_ERROR (Status);\r
 \r
-  GetEfiGlobalVariable2 (L"BootOrder", (VOID **) &BootOrderList, &BootOrderListSize);\r
+  Status = GetEfiGlobalVariable2 (L"BootOrder", (VOID **) &BootOrderList, &BootOrderListSize);\r
+  if (EFI_ERROR (Status) || BootOrderList == NULL){\r
+    return Status;\r
+  }\r
   NewBootOrderList = AllocateZeroPool (BootOrderListSize + sizeof (UINT16));\r
   ASSERT (NewBootOrderList != NULL);\r
   CopyMem (NewBootOrderList, BootOrderList, BootOrderListSize);\r
   NewBootOrderList = AllocateZeroPool (BootOrderListSize + sizeof (UINT16));\r
   ASSERT (NewBootOrderList != NULL);\r
   CopyMem (NewBootOrderList, BootOrderList, BootOrderListSize);\r