]> git.proxmox.com Git - mirror_edk2.git/blobdiff - SecurityPkg/VariableAuthenticated/SecureBootConfigDxe/SecureBootConfigFileExplorer.c
Fix execution status & DEBUG message level mismatch. EFI_D_ERROR is used only...
[mirror_edk2.git] / SecurityPkg / VariableAuthenticated / SecureBootConfigDxe / SecureBootConfigFileExplorer.c
index 3db71d6860a9fa01b85414f5ab3b2e4cd38de37d..310b1ecd4e89f7934d89fcc5acd17a5b67a8a0b0 100644 (file)
@@ -1069,7 +1069,7 @@ UpdateFileExplorePage (
         NewMenuEntry->DisplayStringToken,\r
         STRING_TOKEN (STR_NULL),\r
         EFI_IFR_FLAG_CALLBACK,\r
-        (UINT16) (FILE_OPTION_OFFSET + Index)\r
+        (UINT16) (FILE_OPTION_GOTO_OFFSET + Index)\r
         );\r
     }\r
   }\r
@@ -1133,6 +1133,9 @@ UpdateFileExplorer (
     NewFileContext = (SECUREBOOT_FILE_CONTEXT *) NewMenuEntry->FileContext;\r
 \r
     if (NewFileContext->IsDir ) {\r
+      PrivateData->FeDisplayContext = FileExplorerDisplayDirectory;\r
+\r
+      RemoveEntryList (&NewMenuEntry->Link);\r
       FreeMenu (&DirectoryMenu);\r
       Status = FindFiles (NewMenuEntry);\r
        if (EFI_ERROR (Status)) {\r
@@ -1140,9 +1143,10 @@ UpdateFileExplorer (
          goto OnExit;\r
        }\r
       CreateMenuStringToken (PrivateData->HiiHandle, &DirectoryMenu);\r
+      DestroyMenuEntry (NewMenuEntry);\r
+\r
       UpdateFileExplorePage (PrivateData->HiiHandle, &DirectoryMenu, PrivateData->FeCurrentState);\r
 \r
-      PrivateData->FeDisplayContext = FileExplorerDisplayDirectory;\r
     } else {\r
       if (PrivateData->FeCurrentState == FileExplorerStateEnrollPkFile) {\r
         FormId = SECUREBOOT_ADD_PK_FILE_FORM_ID;\r