
Reviewed-by: Igor Opaniuk igor.opaniuk@linaro.org
On 14 August 2018 at 03:43, Eugeniu Rosca roscaeugeniu@gmail.com wrote:
Cppcheck (v1.85) reports w/o this patch:
[common/avb_verify.c:351]: (error) Memory leak: part [common/avb_verify.c:356]: (error) Memory leak: part [common/avb_verify.c:361]: (error) Memory leak: part [common/avb_verify.c:366]: (error) Memory leak: part
Signed-off-by: Eugeniu Rosca erosca@de.adit-jv.com
common/avb_verify.c | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-)
diff --git a/common/avb_verify.c b/common/avb_verify.c index 9c90e1b4ae5c..58cfa1aa7de8 100644 --- a/common/avb_verify.c +++ b/common/avb_verify.c @@ -348,34 +348,37 @@ static struct mmc_part *get_partition(AvbOps *ops, const char *partition) part->mmc = find_mmc_device(dev_num); if (!part->mmc) { printf("No MMC device at slot %x\n", dev_num);
return NULL;
goto err; } if (mmc_init(part->mmc)) { printf("MMC initialization failed\n");
return NULL;
goto err; } ret = mmc_switch_part(part->mmc, part_num); if (ret)
return NULL;
goto err; mmc_blk = mmc_get_blk_desc(part->mmc); if (!mmc_blk) { printf("Error - failed to obtain block descriptor\n");
return NULL;
goto err; } ret = part_get_info_by_name(mmc_blk, partition, &part->info); if (!ret) { printf("Can't find partition '%s'\n", partition);
return NULL;
goto err; } part->dev_num = dev_num; part->mmc_blk = mmc_blk; return part;
+err:
free(part);
return NULL;
}
static AvbIOResult mmc_byte_io(AvbOps *ops,
2.18.0