aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTimo Teräs <timo.teras@iki.fi>2018-01-03 09:30:12 +0200
committerTimo Teräs <timo.teras@iki.fi>2018-01-03 09:30:12 +0200
commit8ee79c72b2a6ad5971895bc3a95e633211962107 (patch)
tree83b12ae7eea7055982746f9912046a454f4a5bde
parent667cb6bca799e58f58f22ad868761c022c6600dc (diff)
downloadaports-8ee79c72b2a6ad5971895bc3a95e633211962107.tar.bz2
aports-8ee79c72b2a6ad5971895bc3a95e633211962107.tar.xz
apk, del: fix few memory leaks
This fixes couple of valgrind reported leaks - though they are non-important since the leak happens on "exit" only and kernel frees it anyway.
-rw-r--r--src/apk.c5
-rw-r--r--src/del.c1
2 files changed, 5 insertions, 1 deletions
diff --git a/src/apk.c b/src/apk.c
index 6cd4a5a07f..0abc7cc6b0 100644
--- a/src/apk.c
+++ b/src/apk.c
@@ -460,6 +460,7 @@ int main(int argc, char **argv)
const struct apk_option_group **optgroups = default_optgroups;
struct apk_string_array *args;
+ apk_string_array_init(&args);
#ifdef TEST_MODE
apk_string_array_init(&test_repos);
#endif
@@ -585,7 +586,6 @@ int main(int argc, char **argv)
}
#endif
- apk_string_array_init(&args);
apk_string_array_resize(&args, argc);
memcpy(args->item, argv, argc * sizeof(*argv));
@@ -602,5 +602,8 @@ err:
free(ctx);
fetchConnectionCacheClose();
+ apk_string_array_free(&args);
+ free(apk_argv);
+
return r;
}
diff --git a/src/del.c b/src/del.c
index 1c43883c55..5756a3a287 100644
--- a/src/del.c
+++ b/src/del.c
@@ -151,6 +151,7 @@ static int del_main(void *pctx, struct apk_database *db, struct apk_string_array
} else {
apk_solver_print_errors(db, &changeset, ctx->world);
}
+ apk_change_array_free(&changeset.changes);
apk_dependency_array_free(&ctx->world);
return r;