diff --git a/ChangeLog b/ChangeLog index 752bde8..bb8aff3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2009-07-27 Vladimir Serbinenko + + * loader/i386/multiboot_helper.S (grub_multiboot_backward_relocator): + Clear direction flag before jumping to OS. + (grub_multiboot2_real_boot): Likewise. + 2009-07-25 Felix Zielcke * kern/file.c (grub_file_open): Revert to previous check with diff --git a/loader/i386/multiboot_helper.S b/loader/i386/multiboot_helper.S index d7539f1..d109458 100644 --- a/loader/i386/multiboot_helper.S +++ b/loader/i386/multiboot_helper.S @@ -71,6 +71,7 @@ VARIABLE(grub_multiboot_backward_relocator) rep movsb + cld jmp *%edx VARIABLE(grub_multiboot_backward_relocator_end) @@ -112,4 +113,6 @@ FUNCTION(grub_multiboot2_real_boot) /* Move the magic value into eax and jump to the kernel. */ movl $MULTIBOOT2_BOOTLOADER_MAGIC,%eax popl %ecx + + cld jmp *%ecx