summaryrefslogtreecommitdiff
path: root/EdkNt32Pkg/Dxe/PlatformBds/Generic/BootMaint/FileExplorer.c
diff options
context:
space:
mode:
Diffstat (limited to 'EdkNt32Pkg/Dxe/PlatformBds/Generic/BootMaint/FileExplorer.c')
-rw-r--r--EdkNt32Pkg/Dxe/PlatformBds/Generic/BootMaint/FileExplorer.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/EdkNt32Pkg/Dxe/PlatformBds/Generic/BootMaint/FileExplorer.c b/EdkNt32Pkg/Dxe/PlatformBds/Generic/BootMaint/FileExplorer.c
index 5f304e0b8f..db835cf534 100644
--- a/EdkNt32Pkg/Dxe/PlatformBds/Generic/BootMaint/FileExplorer.c
+++ b/EdkNt32Pkg/Dxe/PlatformBds/Generic/BootMaint/FileExplorer.c
@@ -148,7 +148,8 @@ Returns:
BM_FILE_CONTEXT *NewFileContext;
FORM_ID FormId;
BOOLEAN ExitFileExplorer;
-
+ EFI_STATUS Status;
+
NewMenuEntry = NULL;
NewFileContext = NULL;
ExitFileExplorer = FALSE;
@@ -180,7 +181,11 @@ Returns:
if (NewFileContext->IsDir ) {
RemoveEntryList (&NewMenuEntry->Link);
BOpt_FreeMenu (&DirectoryMenu);
- BOpt_FindFiles (CallbackData, NewMenuEntry);
+ Status = BOpt_FindFiles (CallbackData, NewMenuEntry);
+ if (EFI_ERROR (Status)) {
+ ExitFileExplorer = TRUE;
+ goto exit;
+ }
CreateMenuStringToken (CallbackData, CallbackData->FeHiiHandle, &DirectoryMenu);
BOpt_DestroyMenuEntry (NewMenuEntry);
@@ -247,7 +252,7 @@ Returns:
}
}
}
-
+exit:
return ExitFileExplorer;
}