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