Do not discard a technical return value in tests

Compilers are getting smarter, and we started getting this:

libec_slap.c: In function 'test_hd_code':
libec_slap.c:285:14: error: 'frags.array' may be used uninitialized
 in this function [-Werror=maybe-uninitialized]

The fix is to consume the error code in such a way that the
test proceeds further only when frags are indeed initialized.

Change-Id: I54db0172a36419206d00b22608523a08818f41f6
This commit is contained in:
Pete Zaitcev 2020-02-05 23:26:31 -06:00
parent 0eb6cd321e
commit 4568188d77
1 changed files with 12 additions and 4 deletions

View File

@ -280,8 +280,12 @@ static int test_hd_code(struct ec_args *args,
}
j++;
}
create_frags_array_set(&frags,encoded_data, args->k, encoded_parity,
args->m, mask);
rc = create_frags_array_set(&frags, encoded_data, args->k,
encoded_parity, args->m, mask);
if (rc) {
fprintf(stderr, "No core\n");
exit(2);
}
rc = liberasurecode_decode(desc, frags.array, frags.num_fragments,
encoded_fragment_len, 1,
&out_data, &out_data_len);
@ -305,8 +309,12 @@ static int test_hd_code(struct ec_args *args,
mi = mi + 1 % (args->k + args->m);
mask = add_item_to_missing_mask(mask, mi);
}
create_frags_array_set(&frags,encoded_data, args->k, encoded_parity,
args->m, mask);
rc = create_frags_array_set(&frags, encoded_data, args->k,
encoded_parity, args->m, mask);
if (rc) {
fprintf(stderr, "No core\n");
exit(2);
}
rc = liberasurecode_decode(desc, frags.array, frags.num_fragments,
encoded_fragment_len, 1,
&out_data, &out_data_len);