X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=libopkg%2Fpkg_dest_list.c;h=b117bbba2949ca127f6a18bd295febf366a0af51;hb=51e968e4ddffd4acd7c71e4976e1254a590f2217;hp=75d0f3d4ada448c5942d08c6c4caca0514307a43;hpb=69bae440fd21376d2a717575b1418c962396bd21;p=oweals%2Fopkg-lede.git diff --git a/libopkg/pkg_dest_list.c b/libopkg/pkg_dest_list.c index 75d0f3d..b117bbb 100644 --- a/libopkg/pkg_dest_list.c +++ b/libopkg/pkg_dest_list.c @@ -1,4 +1,4 @@ -/* pkg_dest_list.c - the itsy package management system +/* pkg_dest_list.c - the opkg package management system Carl D. Worth @@ -20,10 +20,11 @@ #include "pkg_dest.h" #include "void_list.h" #include "pkg_dest_list.h" +#include "libbb/libbb.h" -int pkg_dest_list_elt_init(pkg_dest_list_elt_t *elt, pkg_dest_t *data) +void pkg_dest_list_elt_init(pkg_dest_list_elt_t *elt, pkg_dest_t *data) { - return void_list_elt_init((void_list_elt_t *) elt, data); + void_list_elt_init((void_list_elt_t *) elt, data); } void pkg_dest_list_elt_deinit(pkg_dest_list_elt_t *elt) @@ -31,18 +32,18 @@ void pkg_dest_list_elt_deinit(pkg_dest_list_elt_t *elt) void_list_elt_deinit((void_list_elt_t *) elt); } -int pkg_dest_list_init(pkg_dest_list_t *list) +void pkg_dest_list_init(pkg_dest_list_t *list) { - return void_list_init((void_list_t *) list); + void_list_init((void_list_t *) list); } void pkg_dest_list_deinit(pkg_dest_list_t *list) { - pkg_dest_list_elt_t *iter; + pkg_dest_list_elt_t *iter, *n; pkg_dest_t *pkg_dest; - for (iter = list->head; iter; iter = iter->next) { - pkg_dest = iter->data; + list_for_each_entry_safe(iter, n, &list->head, node) { + pkg_dest = (pkg_dest_t *)iter->data; pkg_dest_deinit(pkg_dest); /* malloced in pkg_dest_list_append */ @@ -55,28 +56,19 @@ void pkg_dest_list_deinit(pkg_dest_list_t *list) pkg_dest_t *pkg_dest_list_append(pkg_dest_list_t *list, const char *name, const char *root_dir,const char *lists_dir) { - int err; pkg_dest_t *pkg_dest; - /* freed in plg_dest_list_deinit */ - pkg_dest = malloc(sizeof(pkg_dest_t)); - if (pkg_dest == NULL) { - fprintf(stderr, "%s: out of memory\n", __FUNCTION__); - return NULL; - } - + /* freed in pkg_dest_list_deinit */ + pkg_dest = xcalloc(1, sizeof(pkg_dest_t)); pkg_dest_init(pkg_dest, name, root_dir,lists_dir); - err = void_list_append((void_list_t *) list, pkg_dest); - if (err) { - return NULL; - } + void_list_append((void_list_t *) list, pkg_dest); return pkg_dest; } -int pkg_dest_list_push(pkg_dest_list_t *list, pkg_dest_t *data) +void pkg_dest_list_push(pkg_dest_list_t *list, pkg_dest_t *data) { - return void_list_push((void_list_t *) list, data); + void_list_push((void_list_t *) list, data); } pkg_dest_list_elt_t *pkg_dest_list_pop(pkg_dest_list_t *list)