summaryrefslogtreecommitdiff
path: root/IntelFrameworkModulePkg/Universal/BdsDxe/BootMngr/BootManager.c
diff options
context:
space:
mode:
Diffstat (limited to 'IntelFrameworkModulePkg/Universal/BdsDxe/BootMngr/BootManager.c')
-rw-r--r--IntelFrameworkModulePkg/Universal/BdsDxe/BootMngr/BootManager.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/IntelFrameworkModulePkg/Universal/BdsDxe/BootMngr/BootManager.c b/IntelFrameworkModulePkg/Universal/BdsDxe/BootMngr/BootManager.c
index a838c2ff7e..dc1364899e 100644
--- a/IntelFrameworkModulePkg/Universal/BdsDxe/BootMngr/BootManager.c
+++ b/IntelFrameworkModulePkg/Universal/BdsDxe/BootMngr/BootManager.c
@@ -232,6 +232,14 @@ CallBootManager (
BdsLibEnumerateAllBootOption (&mBootOptionsList);
+ //
+ // Group the legacy boot options for the same device type
+ //
+ GroupMultipleLegacyBootOption4SameType ();
+
+ InitializeListHead (&mBootOptionsList);
+ BdsLibBuildOptionFromVar (&mBootOptionsList, L"BootOrder");
+
HiiHandle = gBootManagerPrivate.HiiHandle;
//
@@ -268,9 +276,9 @@ CallBootManager (
mKeyInput++;
//
- // Don't display the boot option marked as LOAD_OPTION_HIDDEN
+ // Don't display the hidden/inactive boot option
//
- if ((Option->Attribute & LOAD_OPTION_HIDDEN) != 0) {
+ if (((Option->Attribute & LOAD_OPTION_HIDDEN) != 0) || ((Option->Attribute & LOAD_OPTION_ACTIVE) == 0)) {
continue;
}