x86: Fix off-by-one error in do_elf_reloc_fixups()

The use of post-increment with a do-while loop results in
the loop going one step too far when handling relocation fixups.

In about 1/100 cases this would cause it to hang.

Signed-off-by: Duncan Laurie <dlaurie@chromium.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
master
Duncan Laurie 13 years ago committed by Simon Glass
parent 984d8b09fb
commit 0c3929092d
  1. 2
      arch/x86/lib/relocate.c

@ -85,7 +85,7 @@ int do_elf_reloc_fixups(void)
*offset_ptr_ram += gd->reloc_off;
}
}
} while (re_src++ < re_end);
} while (++re_src < re_end);
return 0;
}

Loading…
Cancel
Save