dst is an allocated string, we have to free it also when copy_file fails. Signed-off-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> --- commands/cp.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/commands/cp.c b/commands/cp.c index f78e3de..565eca0 100644 --- a/commands/cp.c +++ b/commands/cp.c @@ -77,9 +77,9 @@ static int do_cp(struct command *cmdtp, int argc, char *argv[]) char *dst; dst = concat_path_file(argv[argc - 1], basename(argv[i])); ret = copy_file(argv[i], dst, verbose); + free(dst); if (ret) goto out; - free(dst); } else { ret = copy_file(argv[i], argv[argc - 1], verbose); if (ret) -- 1.7.9.1 _______________________________________________ barebox mailing list barebox@xxxxxxxxxxxxxxxxxxx http://lists.infradead.org/mailman/listinfo/barebox