From: Michael Tremer Date: Tue, 31 Dec 2024 11:49:48 +0000 (+0000) Subject: filelist: Clear number of entries after the filelist has been cleared X-Git-Tag: 0.9.30~643 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=89644326368a23040f3406243dd138204856fb07;p=pakfire.git filelist: Clear number of entries after the filelist has been cleared Signed-off-by: Michael Tremer --- diff --git a/src/libpakfire/filelist.c b/src/libpakfire/filelist.c index 6b97d8109..bac931411 100644 --- a/src/libpakfire/filelist.c +++ b/src/libpakfire/filelist.c @@ -74,8 +74,6 @@ static void pakfire_filelist_free(struct pakfire_filelist* list) { pakfire_unref(list->pakfire); if (list->ctx) pakfire_ctx_unref(list->ctx); - if (list->files) - free(list->files); free(list); } @@ -111,8 +109,17 @@ PAKFIRE_EXPORT int pakfire_filelist_is_empty(struct pakfire_filelist* list) { } PAKFIRE_EXPORT void pakfire_filelist_clear(struct pakfire_filelist* list) { - for (unsigned int i = 0; i < list->num_files; i++) - pakfire_file_unref(list->files[i]); + if (list->files) { + for (unsigned int i = 0; i < list->num_files; i++) + pakfire_file_unref(list->files[i]); + + // Free the array + free(list->files); + list->files = NULL; + + // Reset number of files on the list + list->num_files = 0; + } } PAKFIRE_EXPORT struct pakfire_file* pakfire_filelist_get(struct pakfire_filelist* list, size_t index) {