From 389997d5acd3eac976094e238dbe8f3e18be6dd3 Mon Sep 17 00:00:00 2001 From: Raghuram Subramani Date: Sat, 26 Jul 2025 18:48:24 +0530 Subject: main: avoid leaking memory --- src/main.c | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'src/main.c') diff --git a/src/main.c b/src/main.c index d783f1a..e0dac0d 100644 --- a/src/main.c +++ b/src/main.c @@ -135,6 +135,25 @@ main(int argc, char **argv) handle_file(path); } + for (size_t i = 0; i < config->keys->size; i++) { + ptr_wrapper_t *wrapper; + + wrapper = list_get(config->values, i); + if (wrapper->ptr != NULL) + free(wrapper->ptr); + + list_t *l = list_get(config->array_values, i); + for (size_t y = 0; y < l->size; y++) { + wrapper = list_get(l, y); + + if (wrapper->ptr != NULL) + free(wrapper->ptr); + } + } + + list_delete(config->keys); + list_delete(config->values); + list_delete(config->array_values); free(config); return EXIT_SUCCESS; -- cgit v1.2.3