Commit 7330df7c authored by Thomas Altenbach's avatar Thomas Altenbach Committed by Jamie
Browse files

boot: bootutil: Fix last sector index computation for swap-offset



When using swap-offset, the index of the last sector of the primary slot
that have to be swapped is computed at the beginning of the upgrade
process. This computation was in fact returning the number of sector to
swap rather than the index of the last sectpr (so N+1 instead of N).
This was causing the upgrade to fail for large image, using all the
available sectors.

Signed-off-by: default avatarThomas Altenbach <thomas.altenbach@legrand.com>
parent 429e2fea
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -68,10 +68,10 @@ uint32_t find_last_idx(struct boot_loader_state *state, uint32_t swap_size)

    while (1) {
        sz += sector_sz;
        last_idx++;
        if (sz >= swap_size) {
            break;
        }
        last_idx++;
    }

    return last_idx;