grub: don't print prefix errors on the screen
still set grub_errno, and behave the same, but don't print anything. just carry on execution as normal. Signed-off-by: Leah Rowe <leah@libreboot.org>btrfsvols
parent
72e7d090c9
commit
ab57e7a488
|
@ -0,0 +1,102 @@
|
|||
From 9e7a651a0f15f2e9dec65a77765c3c4fd97b4165 Mon Sep 17 00:00:00 2001
|
||||
From: Leah Rowe <leah@libreboot.org>
|
||||
Date: Sun, 5 Nov 2023 16:14:58 +0000
|
||||
Subject: [PATCH 1/1] don't print missing prefix errors on the screen
|
||||
|
||||
we do actually set the prefix. this patch modifies
|
||||
grub to still set grub_errno and return accordingly,
|
||||
so the behaviour is otherwise identical, but it will
|
||||
no longer print a warning message on the screen.
|
||||
|
||||
Signed-off-by: Leah Rowe <leah@libreboot.org>
|
||||
---
|
||||
grub-core/commands/keylayouts.c | 2 +-
|
||||
grub-core/commands/loadenv.c | 2 +-
|
||||
grub-core/commands/nativedisk.c | 2 +-
|
||||
grub-core/efiemu/main.c | 3 +--
|
||||
grub-core/font/font.c | 2 +-
|
||||
grub-core/kern/dl.c | 2 +-
|
||||
6 files changed, 6 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/grub-core/commands/keylayouts.c b/grub-core/commands/keylayouts.c
|
||||
index 445fa0601..00bcf7025 100644
|
||||
--- a/grub-core/commands/keylayouts.c
|
||||
+++ b/grub-core/commands/keylayouts.c
|
||||
@@ -211,7 +211,7 @@ grub_cmd_keymap (struct grub_command *cmd __attribute__ ((unused)),
|
||||
{
|
||||
const char *prefix = grub_env_get ("prefix");
|
||||
if (!prefix)
|
||||
- return grub_error (GRUB_ERR_BAD_ARGUMENT, N_("variable `%s' isn't set"), "prefix");
|
||||
+ return (grub_errno = GRUB_ERR_BAD_ARGUMENT);
|
||||
filename = grub_xasprintf ("%s/layouts/%s.gkb", prefix, argv[0]);
|
||||
if (!filename)
|
||||
return grub_errno;
|
||||
diff --git a/grub-core/commands/loadenv.c b/grub-core/commands/loadenv.c
|
||||
index 166445849..699b39bfa 100644
|
||||
--- a/grub-core/commands/loadenv.c
|
||||
+++ b/grub-core/commands/loadenv.c
|
||||
@@ -58,7 +58,7 @@ open_envblk_file (char *filename,
|
||||
prefix = grub_env_get ("prefix");
|
||||
if (! prefix)
|
||||
{
|
||||
- grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix");
|
||||
+ grub_errno = GRUB_ERR_FILE_NOT_FOUND;
|
||||
return 0;
|
||||
}
|
||||
|
||||
diff --git a/grub-core/commands/nativedisk.c b/grub-core/commands/nativedisk.c
|
||||
index 580c8d3b0..6806bff9c 100644
|
||||
--- a/grub-core/commands/nativedisk.c
|
||||
+++ b/grub-core/commands/nativedisk.c
|
||||
@@ -186,7 +186,7 @@ grub_cmd_nativedisk (grub_command_t cmd __attribute__ ((unused)),
|
||||
prefix = grub_env_get ("prefix");
|
||||
|
||||
if (! prefix)
|
||||
- return grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix");
|
||||
+ return (grub_errno = GRUB_ERR_FILE_NOT_FOUND);
|
||||
|
||||
if (prefix)
|
||||
path_prefix = (prefix[0] == '(') ? grub_strchr (prefix, ')') : NULL;
|
||||
diff --git a/grub-core/efiemu/main.c b/grub-core/efiemu/main.c
|
||||
index e7037f4ed..e5d4dbff1 100644
|
||||
--- a/grub-core/efiemu/main.c
|
||||
+++ b/grub-core/efiemu/main.c
|
||||
@@ -231,8 +231,7 @@ grub_efiemu_autocore (void)
|
||||
prefix = grub_env_get ("prefix");
|
||||
|
||||
if (! prefix)
|
||||
- return grub_error (GRUB_ERR_FILE_NOT_FOUND,
|
||||
- N_("variable `%s' isn't set"), "prefix");
|
||||
+ return (grub_errno = GRUB_ERR_FILE_NOT_FOUND);
|
||||
|
||||
suffix = grub_efiemu_get_default_core_name ();
|
||||
|
||||
diff --git a/grub-core/font/font.c b/grub-core/font/font.c
|
||||
index 18de52562..2a0fea6c8 100644
|
||||
--- a/grub-core/font/font.c
|
||||
+++ b/grub-core/font/font.c
|
||||
@@ -461,7 +461,7 @@ grub_font_load (const char *filename)
|
||||
|
||||
if (!prefix)
|
||||
{
|
||||
- grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix");
|
||||
+ grub_errno = GRUB_ERR_FILE_NOT_FOUND;
|
||||
goto fail;
|
||||
}
|
||||
file = try_open_from_prefix (prefix, filename);
|
||||
diff --git a/grub-core/kern/dl.c b/grub-core/kern/dl.c
|
||||
index 4011e2d15..af3bd00d0 100644
|
||||
--- a/grub-core/kern/dl.c
|
||||
+++ b/grub-core/kern/dl.c
|
||||
@@ -758,7 +758,7 @@ grub_dl_load (const char *name)
|
||||
return 0;
|
||||
|
||||
if (! grub_dl_dir) {
|
||||
- grub_error (GRUB_ERR_FILE_NOT_FOUND, N_("variable `%s' isn't set"), "prefix");
|
||||
+ grub_errno = GRUB_ERR_FILE_NOT_FOUND;
|
||||
return 0;
|
||||
}
|
||||
|
||||
--
|
||||
2.39.2
|
||||
|
Loading…
Reference in New Issue