loader/i386/linux: Fix cleanup if kernel doesn't support 64-bit addressing
Simply returning from grub_cmd_linux() doesn't free "file" resource nor calls grub_dl_ref(my_mod). Jump to "fail" label for proper cleanup like other error checks do. Signed-off-by: Sergii Dmytruk <sergii.dmytruk@3mdeb.com> Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com>
This commit is contained in:
parent
4dc6166571
commit
13f005ed83
@ -838,9 +838,10 @@ grub_cmd_linux (grub_command_t cmd __attribute__ ((unused)),
|
||||
#ifdef GRUB_MACHINE_EFI
|
||||
#ifdef __x86_64__
|
||||
if (grub_le_to_cpu16 (linux_params.version) < 0x0208 &&
|
||||
((grub_addr_t) grub_efi_system_table >> 32) != 0)
|
||||
return grub_error(GRUB_ERR_BAD_OS,
|
||||
"kernel does not support 64-bit addressing");
|
||||
((grub_addr_t) grub_efi_system_table >> 32) != 0) {
|
||||
grub_errno = grub_error (GRUB_ERR_BAD_OS, "kernel does not support 64-bit addressing");
|
||||
goto fail;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (grub_le_to_cpu16 (linux_params.version) >= 0x0208)
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user