X-Git-Url: https://git.librecmc.org/?p=oweals%2Fopkg-lede.git;a=blobdiff_plain;f=libopkg%2Fpkg_vec.c;h=2c1bcf9aa5acef92fcb57b8cc03870e93fd75607;hp=436622a11b38f943cdbbea145148ac30169e079c;hb=b6a38150404297fd718587d1ffefc160044f2f64;hpb=3523443344809d2f357a5008931c9f79e91a3de3 diff --git a/libopkg/pkg_vec.c b/libopkg/pkg_vec.c index 436622a..2c1bcf9 100644 --- a/libopkg/pkg_vec.c +++ b/libopkg/pkg_vec.c @@ -36,7 +36,12 @@ pkg_vec_t * pkg_vec_alloc(void) void pkg_vec_free(pkg_vec_t *vec) { - free(vec->pkgs); + if (!vec) + return; + + if (vec->pkgs) + free(vec->pkgs); + free(vec); } @@ -103,17 +108,6 @@ void pkg_vec_insert(pkg_vec_t *vec, const pkg_t *pkg) { int found = 0; -#if 0 - /* look for a duplicate pkg by name, version, and architecture */ - for (i = 0; i < vec->len; i++) - if ((strcmp(pkg->name, vec->pkgs[i]->name) == 0) - && (pkg_compare_versions(pkg, vec->pkgs[i]) == 0) - && (strcmp(pkg->architecture, vec->pkgs[i]->name) == 0)) { - found = 1; - break; - } -#endif - /* we didn't find one, add it */ if(!found){ vec->pkgs = (pkg_t **)realloc(vec->pkgs, (vec->len + 1) * sizeof(pkg_t *)); @@ -180,6 +174,8 @@ abstract_pkg_vec_t * abstract_pkg_vec_alloc(void) void abstract_pkg_vec_free(abstract_pkg_vec_t *vec) { + if (!vec) + return; free(vec->pkgs); free(vec); } @@ -190,23 +186,11 @@ void abstract_pkg_vec_free(abstract_pkg_vec_t *vec) void abstract_pkg_vec_insert(abstract_pkg_vec_t *vec, abstract_pkg_t *pkg) { -#if 0 - /* look for a duplicate pkg by name */ - for(i = 0; i < vec->len; i++) - if (strcmp(pkg->name, vec->pkgs[i]->name) == 0) - break; - - /* we didn't find one, add it */ - if(i == vec->len){ -#endif vec->pkgs = (abstract_pkg_t **) realloc(vec->pkgs, (vec->len + 1) * sizeof(abstract_pkg_t *)); vec->pkgs[vec->len] = pkg; vec->len++; -#if 0 - } -#endif } abstract_pkg_t * abstract_pkg_vec_get(abstract_pkg_vec_t *vec, int i)