gnu: grub-efi: Fix an uninitialized variable issue.
* gnu/packages/patches/grub-check-error-efibootmgr.patch: Add hunk to correct uninitialized variable.
This commit is contained in:
parent
33428d1267
commit
d36cd88873
|
@ -160,7 +160,7 @@ index 5e4cdfd..690f180 100644
|
|||
|
||||
/* Try to make this image bootable using the EFI Boot Manager, if available. */
|
||||
if (!efi_distributor || efi_distributor[0] == '\0')
|
||||
@@ -1887,8 +1892,11 @@ main (int argc, char *argv[])
|
||||
@@ -1887,7 +1892,10 @@ main (int argc, char *argv[])
|
||||
efidir_grub_dev->disk->name,
|
||||
(part ? ",": ""), (part ? : ""));
|
||||
grub_free (part);
|
||||
|
@ -173,4 +173,25 @@ index 5e4cdfd..690f180 100644
|
|||
+ strerror (ret));
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
Below is a followup to the patch above: the uninitialized variable could lead
|
||||
‘grub-install’ to error out when it shouldn’t (seen on an AArch64 box where
|
||||
‘grub_install_remove_efi_entries_by_distributor’ didn't have any entry to
|
||||
remove):
|
||||
|
||||
grub-install: error: efibootmgr failed to register the boot entry: Unknown error 65535.
|
||||
|
||||
See <http://lists.gnu.org/archive/html/bug-grub/2018-10/msg00006.html>.
|
||||
|
||||
--- grub-2.02/grub-core/osdep/unix/platform.c 2018-10-17 22:21:53.015284846 +0200
|
||||
+++ grub-2.02/grub-core/osdep/unix/platform.c 2018-10-17 22:21:55.595271222 +0200
|
||||
@@ -85,7 +85,7 @@ grub_install_remove_efi_entries_by_distr
|
||||
pid_t pid = grub_util_exec_pipe ((const char * []){ "efibootmgr", NULL }, &fd);
|
||||
char *line = NULL;
|
||||
size_t len = 0;
|
||||
- int rc;
|
||||
+ int rc = 0;
|
||||
|
||||
if (!pid)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue