Reporter: [EMAIL PROTECTED] Summary: [PATCH] double RAW_ADDR()ing while loading ELF in commandline grub Version: 0.93 Type: software bug
Message: The cur_addr is already RAW_ADDR()ed, so reapplying it could cause nasty things (coredump). This won't surface on bootloader grub which RAW_ADDR() is a nop; only a problem from a commandline grub. Index: grub/stage2/boot.c diff -u grub/stage2/boot.c:1.1.1.1 grub/stage2/boot.c:1.1.2.13 --- grub/stage2/boot.c:1.1.1.1 Fri Jan 31 13:41:28 2003 +++ grub/stage2/boot.c Thu Mar 20 00:59:24 2003 @@ -655,7 +655,7 @@ tab_size = pu.elf->e_shentsize * pu.elf->e_shnum; grub_seek (pu.elf->e_shoff); - if (grub_read ((char *) RAW_ADDR (cur_addr), tab_size) + if (grub_read ((char *) cur_addr, tab_size) == tab_size) { mbi.syms.e.addr = cur_addr; @@ -684,7 +684,7 @@ sec_size = shdr[i].sh_size; if (! (memcheck (cur_addr, sec_size) - && (grub_read ((char *) RAW_ADDR (cur_addr), + && (grub_read ((char *) cur_addr, sec_size) == sec_size))) { ---- Please send followups to <[EMAIL PROTECTED]>. _______________________________________________ Bug-grub mailing list [EMAIL PROTECTED] http://mail.gnu.org/mailman/listinfo/bug-grub