diff options
Diffstat (limited to 'external/gard/gard.c')
-rw-r--r-- | external/gard/gard.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/external/gard/gard.c b/external/gard/gard.c index 16da76a..ba15e87 100644 --- a/external/gard/gard.c +++ b/external/gard/gard.c @@ -598,6 +598,7 @@ static int do_clear_i(struct gard_ctx *ctx, int pos, struct gard_record *gard, v static int reset_partition(struct gard_ctx *ctx) { + int no_ecc_len = (ctx->gard_data_len / 9) * 8; struct gard_record *gard; int rc = 0; @@ -613,7 +614,7 @@ static int reset_partition(struct gard_ctx *ctx) goto out; } - rc = blocklevel_write(ctx->bl, ctx->gard_data_pos, gard, ctx->gard_data_len); + rc = blocklevel_write(ctx->bl, ctx->gard_data_pos, gard, no_ecc_len); if (rc) fprintf(stderr, "Couldn't reset the entire gard partition. Bailing out\n"); |