diff --git a/ChangeLog b/ChangeLog index 20bb5963b..524d6e235 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2012-02-09 Vladimir Serbinenko + + * grub-core/loader/multiboot_elfxx.c (grub_multiboot_load_elf): Fix + incorrect nesting of #if's. + 2012-02-09 Vladimir Serbinenko * grub-core/commands/lsacpi.c (disp_acpi_xsdt_table): #if'-out the diff --git a/grub-core/loader/multiboot_elfxx.c b/grub-core/loader/multiboot_elfxx.c index 1559aa7db..36c80ea03 100644 --- a/grub-core/loader/multiboot_elfxx.c +++ b/grub-core/loader/multiboot_elfxx.c @@ -73,14 +73,16 @@ CONCAT(grub_multiboot_load_elf, XX) (grub_file_t file, const char *filename, voi if (ehdr->e_phoff + ehdr->e_phnum * ehdr->e_phentsize > MULTIBOOT_SEARCH) return grub_error (GRUB_ERR_BAD_OS, "program header at a too high offset"); -#if defined (MULTIBOOT_LOAD_ELF64) && defined (__mips) +#ifdef MULTIBOOT_LOAD_ELF64 +# ifdef __mips /* We still in 32-bit mode. */ if (ehdr->e_entry < 0xffffffff80000000ULL) return grub_error (GRUB_ERR_BAD_OS, "invalid entry point for ELF64"); -#else +# else /* We still in 32-bit mode. */ if (ehdr->e_entry > 0xffffffff) return grub_error (GRUB_ERR_BAD_OS, "invalid entry point for ELF64"); +# endif #endif phdr_base = (char *) buffer + ehdr->e_phoff;