[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 <m8@semihalf.com>
diff --git a/lib_i386/i386_linux.c b/lib_i386/i386_linux.c
index 6cb021a..b0cf263 100644
--- a/lib_i386/i386_linux.c
+++ b/lib_i386/i386_linux.c
@@ -129,13 +129,13 @@
}
/* 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) {