summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKay Sievers <kay@vrfy.org>2013-12-16 01:01:06 +0100
committerKay Sievers <kay@vrfy.org>2013-12-16 01:01:06 +0100
commit4b73ab6980fd39bb74615716f7a1231c057ba729 (patch)
treedc581f1c528da598cfdf75f4532b3d53922db00c
parente51ec5722c7f90d89aadf4178cf47e919c551b1f (diff)
fall back to default splash image
-rw-r--r--src/efi/gummiboot.c19
1 files changed, 15 insertions, 4 deletions
diff --git a/src/efi/gummiboot.c b/src/efi/gummiboot.c
index a91dae9..940b162 100644
--- a/src/efi/gummiboot.c
+++ b/src/efi/gummiboot.c
@@ -1763,10 +1763,21 @@ EFI_STATUS efi_main(EFI_HANDLE image, EFI_SYSTEM_TABLE *sys_table) {
entry->call();
continue;
}
- } else if (entry->splash)
- graphics_splash(root_dir, entry->splash);
- else if (config.splash)
- graphics_splash(root_dir, config.splash);
+ } else {
+ err = EFI_NOT_FOUND;
+
+ /* splash from entry file */
+ if (entry->splash)
+ err = graphics_splash(root_dir, entry->splash);
+
+ /* splash from config file */
+ if (EFI_ERROR(err) && config.splash)
+ err = graphics_splash(root_dir, config.splash);
+
+ /* default splash */
+ if (EFI_ERROR(err))
+ graphics_splash(root_dir, L"\\EFI\\gummiboot\\splash.bmp");
+ }
/* export the selected boot entry to the system */
efivar_set(L"LoaderEntrySelected", entry->file, FALSE);