From 222bf1013f39808e42479cd2f1cc2687cc59e657 Mon Sep 17 00:00:00 2001 From: Michael Karcher Date: Thu, 22 Dec 2011 23:27:03 +0000 Subject: Fix programmer-centric probe (patch v2) As reported by Stefan Tauner on IRC, the new programmer-centric logic is broken by re-using occupied members of the flashes array when changing to the next programmer. This fixes it. patch v2: prevent probing one chip per programmer even if the array is full. Using a do-while loop was a bad idea. Corresponding to flashrom svn r1479. Signed-off-by: Michael Karcher Acked-by: Carl-Daniel Hailfinger --- cli_classic.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/cli_classic.c b/cli_classic.c index 543b644..a931de8 100644 --- a/cli_classic.c +++ b/cli_classic.c @@ -451,9 +451,10 @@ int main(int argc, char *argv[]) for (j = 0; j < registered_programmer_count; j++) { startchip = 0; - for (i = 0; i < ARRAY_SIZE(flashes); i++) { + while (chipcount < ARRAY_SIZE(flashes)) { startchip = probe_flash(®istered_programmers[j], - startchip, &flashes[i], 0); + startchip, + &flashes[chipcount], 0); if (startchip == -1) break; chipcount++; -- cgit v1.1