From: Marian Balakowicz Date: Tue, 8 Jan 2008 17:11:44 +0000 (+0100) Subject: [new uImage] Fix uImage header pointer use in i386 do_bootm_linux() X-Git-Tag: v1.3.3-rc1~141^2^2~81 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=15158971f49255ccef54f0979a942cfd3de2ae52;p=oweals%2Fu-boot.git [new uImage] Fix uImage header pointer use in i386 do_bootm_linux() Use image header copy instead of a (possibly corrupted) pointer to a initial image location. Signed-off-by: Marian Balakowicz --- diff --git a/lib_i386/i386_linux.c b/lib_i386/i386_linux.c index 6cb021a193..b0cf2630ca 100644 --- a/lib_i386/i386_linux.c +++ b/lib_i386/i386_linux.c @@ -129,13 +129,13 @@ void do_bootm_linux(cmd_tbl_t *cmdtp, int flag, int argc, char *argv[], } /* if multi-part image, we need to advance base ptr */ - if (image_check_type (hdr, IH_TYPE_MULTI) && (len_ptr[1])) { + if (image_check_type (&header, IH_TYPE_MULTI) && (len_ptr[1])) { int i; for (i=0, addr+=sizeof(int); len_ptr[i++]; addr+=sizeof(int)); } - base_ptr = load_zimage((void*)addr + image_get_header_size (), - image_get_data_size (hdr), + base_ptr = load_zimage ((void*)addr + image_get_header_size (), + image_get_data_size (&header), initrd_start, initrd_end-initrd_start, 0); if (NULL == base_ptr) {