From f171122f03a5e0feca9541b50ef1bfd693c5fb21 Mon Sep 17 00:00:00 2001 From: Vladimir Serbinenko Date: Mon, 17 Jun 2024 15:56:31 +0300 Subject: [PATCH] loader/emu/linux: Fix determination of program name Current code works only if package matches binary name transformation rules. It's often true but is not guaranteed. Fixes: https://savannah.gnu.org/bugs/?64410 Signed-off-by: Vladimir Serbinenko Reviewed-by: Daniel Kiper --- grub-core/loader/emu/linux.c | 2 +- include/grub/emu/misc.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/grub-core/loader/emu/linux.c b/grub-core/loader/emu/linux.c index 7de3f7f86..638c55bf8 100644 --- a/grub-core/loader/emu/linux.c +++ b/grub-core/loader/emu/linux.c @@ -68,7 +68,7 @@ grub_linux_boot (void) } if (kexecute < 1) - grub_fatal (N_("use '"PACKAGE"-emu --kexec' to force a system restart")); + grub_fatal (N_("use '%s %s' to force a system restart"), program_name, "--kexec"); grub_dprintf ("linux", "Performing 'systemctl kexec' (%s) ", (kexecute==1) ? "do-or-die" : "just-in-case"); diff --git a/include/grub/emu/misc.h b/include/grub/emu/misc.h index 01056954b..fa959ebe7 100644 --- a/include/grub/emu/misc.h +++ b/include/grub/emu/misc.h @@ -31,7 +31,7 @@ #include extern int verbosity; -extern const char *program_name; +extern const char *EXPORT_VAR(program_name); void grub_init_all (void); void grub_fini_all (void); -- 2.47.2