Hi Liming, 
Except Ray's comment, others Look good to me. 
Reviewed-by: Sunny Wang <[email protected]>

Hi Ray and Eric, 
It looks like this code change is used for replacing the one which we offline 
discussed to fix the duplicated Boot Manager menu issue, isn't it?  
 - [edk2] [Patch] MdeModulePkg UefiBootManagerLib: Add OptioalData for boot 
option.

Regards,
Sunny Wang

-----Original Message-----
From: edk2-devel [mailto:[email protected]] On Behalf Of Liming 
Gao
Sent: Wednesday, August 31, 2016 4:19 PM
To: [email protected]
Cc: Ruiyu Ni <[email protected]>; Eric Dong <[email protected]>
Subject: [edk2] [Patch] MdeModulePkg UefiBootManagerLib: Ignore 
BootManagerMenuApp from LoadFile

BootManagerMenuApp boot option is handled by EfiBootManagerGetBootManagerMenu.
Don't need to handle it again when parse LoadFile protocol.

Cc: Ruiyu Ni <[email protected]>
Cc: Eric Dong <[email protected]>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Liming Gao <[email protected]>
---
 MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c | 17 +++++++----------
 1 file changed, 7 insertions(+), 10 deletions(-)

diff --git a/MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c 
b/MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c
index ecd0ae3..f8a3988 100644
--- a/MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c
+++ b/MdeModulePkg/Library/UefiBootManagerLib/BmBoot.c
@@ -1940,7 +1940,6 @@ BmEnumerateBootOptions (
   UINTN                                 Removable;
   UINTN                                 Index;
   CHAR16                                *Description;
-  UINT32                                BootAttributes;
 
   ASSERT (BootOptionCount != NULL);
 
@@ -2070,6 +2069,12 @@ BmEnumerateBootOptions (
          &Handles
          );
   for (Index = 0; Index < HandleCount; Index++) {
+    //
+    // Ignore BootMenuApp. its boot option will be created by 
BmRegisterBootManagerMenu().
+    //
+    if (BmIsBootMenuAppFilePath (DevicePathFromHandle (Handles[Index]))) {
+      continue;
+    }
 
     Description = BmGetBootDescription (Handles[Index]);
     BootOptions = ReallocatePool (
@@ -2079,19 +2084,11 @@ BmEnumerateBootOptions (
                     );
     ASSERT (BootOptions != NULL);
 
-    //
-    // If LoadFile includes BootMenuApp, its boot attribue will be set to APP 
and HIDDEN.
-    //
-    BootAttributes = LOAD_OPTION_ACTIVE;
-    if (BmIsBootMenuAppFilePath (DevicePathFromHandle (Handles[Index]))) {
-      BootAttributes = LOAD_OPTION_CATEGORY_APP | LOAD_OPTION_ACTIVE | 
LOAD_OPTION_HIDDEN;
-    }
-
     Status = EfiBootManagerInitializeLoadOption (
                &BootOptions[(*BootOptionCount)++],
                LoadOptionNumberUnassigned,
                LoadOptionTypeBoot,
-               BootAttributes,
+               LOAD_OPTION_ACTIVE,
                Description,
                DevicePathFromHandle (Handles[Index]),
                NULL,
-- 
2.8.0.windows.1

_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel
_______________________________________________
edk2-devel mailing list
[email protected]
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to