Remove the ASSERT in UI code that may be triggered,
and clean up the useless code.

Cc: Liming Gao <liming....@intel.com>
Cc: Eric Dong <eric.d...@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Dandan Bi <dandan...@intel.com>
---
 MdeModulePkg/Application/UiApp/FrontPage.c         |  7 ++-
 .../BootMaintenanceManagerUiLib/BootMaintenance.c  | 15 ++++--
 .../BootMaintenanceManager.h                       | 10 ----
 .../Library/BootMaintenanceManagerUiLib/Variable.c | 56 ----------------------
 4 files changed, 17 insertions(+), 71 deletions(-)

diff --git a/MdeModulePkg/Application/UiApp/FrontPage.c 
b/MdeModulePkg/Application/UiApp/FrontPage.c
index 5c67a3f..9cc877b 100644
--- a/MdeModulePkg/Application/UiApp/FrontPage.c
+++ b/MdeModulePkg/Application/UiApp/FrontPage.c
@@ -1,9 +1,9 @@
 /** @file
   FrontPage routines to handle the callbacks and browser calls
 
-Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved.<BR>
 This program and the accompanying materials
 are licensed and made available under the terms and conditions of the BSD 
License
 which accompanies this distribution.  The full text of the license may be 
found at
 http://opensource.org/licenses/bsd-license.php
 
@@ -418,11 +418,14 @@ FrontPageCallback (
                         &gEfiGlobalVariableGuid,
                         EFI_VARIABLE_NON_VOLATILE | 
EFI_VARIABLE_BOOTSERVICE_ACCESS | EFI_VARIABLE_RUNTIME_ACCESS,
                         AsciiStrSize (Lang),
                         Lang
                         );
-        ASSERT_EFI_ERROR(Status);
+        if (EFI_ERROR (Status)) {
+          FreePool (Lang);
+          return EFI_DEVICE_ERROR;
+        }
       } else {
         ASSERT (FALSE);
       }
       FreePool (Lang);
       //
diff --git a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenance.c 
b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenance.c
index 8189bd1..3864996 100644
--- a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenance.c
+++ b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenance.c
@@ -1,9 +1,9 @@
 /** @file
 The functions for Boot Maintainence Main menu.
 
-Copyright (c) 2004 - 2015, Intel Corporation. All rights reserved.<BR>
+Copyright (c) 2004 - 2016, Intel Corporation. All rights reserved.<BR>
 This program and the accompanying materials
 are licensed and made available under the terms and conditions of the BSD 
License
 which accompanies this distribution.  The full text of the license may be 
found at
 http://opensource.org/licenses/bsd-license.php
 
@@ -665,12 +665,21 @@ BootMaintRouteConfig (
                     &gEfiGlobalVariableGuid,
                     EFI_VARIABLE_BOOTSERVICE_ACCESS | 
EFI_VARIABLE_RUNTIME_ACCESS | EFI_VARIABLE_NON_VOLATILE,
                     sizeof(UINT16),
                     &(NewBmmData->BootTimeOut)
                     );
-    ASSERT_EFI_ERROR(Status);
-
+    if (EFI_ERROR (Status)) {
+      //
+      // If set variable fail, and don't have the appropriate error status for 
RouteConfig fuction to return,
+      // just return the EFI_NOT_FOUND.
+      //
+      if (Status == EFI_OUT_OF_RESOURCES) {
+        return Status;
+      } else {
+        return EFI_NOT_FOUND;
+      }
+    }
     Private->BmmOldFakeNVData.BootTimeOut = NewBmmData->BootTimeOut;
   }
 
   //
   // Check data which located in Driver Options Menu and save the settings if 
need
diff --git 
a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManager.h 
b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManager.h
index b482bf2..2c93446 100644
--- a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManager.h
+++ b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/BootMaintenanceManager.h
@@ -762,20 +762,10 @@ EFI_STATUS
 Var_UpdateOutOfBandOption (
   IN  UINT16           MenuIndex
   );
 
 /**
-  Update the device path of "ConOut", "ConIn" and "ErrOut" based on the new 
BaudRate, Data Bits, 
-  parity and stop Bits set.
-
-**/
-VOID
-Var_UpdateAllConsoleOption (
-  VOID
-  );
-
-/**
   This function update the "BootNext" EFI Variable. If there is no "BootNex" 
specified in BMM, 
   this EFI Variable is deleted.
   It also update the BMM context data specified the "BootNext" value.
 
   @param CallbackData    The BMM context data.
diff --git a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/Variable.c 
b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/Variable.c
index 2ecf5b6..b65d6a5 100644
--- a/MdeModulePkg/Library/BootMaintenanceManagerUiLib/Variable.c
+++ b/MdeModulePkg/Library/BootMaintenanceManagerUiLib/Variable.c
@@ -299,66 +299,10 @@ Var_ChangeDriverOrder (
   }
   return EFI_SUCCESS;
 }
 
 /**
-  Update the device path of "ConOut", "ConIn" and "ErrOut" 
-  based on the new BaudRate, Data Bits, parity and Stop Bits
-  set.
-
-**/
-VOID
-Var_UpdateAllConsoleOption (
-  VOID
-  )
-{
-  EFI_DEVICE_PATH_PROTOCOL  *OutDevicePath;
-  EFI_DEVICE_PATH_PROTOCOL  *InpDevicePath;
-  EFI_DEVICE_PATH_PROTOCOL  *ErrDevicePath;
-  EFI_STATUS                Status;
-
-  GetEfiGlobalVariable2 (L"ConOut", (VOID**)&OutDevicePath, NULL);
-  GetEfiGlobalVariable2 (L"ConIn", (VOID**)&InpDevicePath, NULL);
-  GetEfiGlobalVariable2 (L"ErrOut", (VOID**)&ErrDevicePath, NULL);
-  if (OutDevicePath != NULL) {
-    ChangeVariableDevicePath (OutDevicePath);
-    Status = gRT->SetVariable (
-                    L"ConOut",
-                    &gEfiGlobalVariableGuid,
-                    VAR_FLAG,
-                    GetDevicePathSize (OutDevicePath),
-                    OutDevicePath
-                    );
-    ASSERT (!EFI_ERROR (Status));
-  }
-
-  if (InpDevicePath != NULL) {
-    ChangeVariableDevicePath (InpDevicePath);
-    Status = gRT->SetVariable (
-                    L"ConIn",
-                    &gEfiGlobalVariableGuid,
-                    VAR_FLAG,
-                    GetDevicePathSize (InpDevicePath),
-                    InpDevicePath
-                    );
-    ASSERT (!EFI_ERROR (Status));
-  }
-
-  if (ErrDevicePath != NULL) {
-    ChangeVariableDevicePath (ErrDevicePath);
-    Status = gRT->SetVariable (
-                    L"ErrOut",
-                    &gEfiGlobalVariableGuid,
-                    VAR_FLAG,
-                    GetDevicePathSize (ErrDevicePath),
-                    ErrDevicePath
-                    );
-    ASSERT (!EFI_ERROR (Status));
-  }
-}
-
-/**
   This function delete and build multi-instance device path for
   specified type of console device.
 
   This function clear the EFI variable defined by ConsoleName and
   gEfiGlobalVariableGuid. It then build the multi-instance device
-- 
1.9.5.msysgit.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to