index : pacman | |
Archlinux32 fork of pacman | gitolite user |
summaryrefslogtreecommitdiff |
-rw-r--r-- | lib/libalpm/group.c | 20 |
diff --git a/lib/libalpm/group.c b/lib/libalpm/group.c index 050bcbd5..3e080a58 100644 --- a/lib/libalpm/group.c +++ b/lib/libalpm/group.c @@ -27,17 +27,17 @@ #include "group.h" #include "alpm_list.h" #include "util.h" -#include "error.h" #include "log.h" #include "alpm.h" -pmgrp_t *_alpm_grp_new() +pmgrp_t *_alpm_grp_new(const char *name) { pmgrp_t* grp; ALPM_LOG_FUNC; CALLOC(grp, 1, sizeof(pmgrp_t), RET_ERR(PM_ERR_MEMORY, NULL)); + STRDUP(grp->name, name, RET_ERR(PM_ERR_MEMORY, NULL)); return(grp); } @@ -50,20 +50,12 @@ void _alpm_grp_free(pmgrp_t *grp) return; } - FREELIST(grp->packages); + FREE(grp->name); + /* do NOT free the contents of the list, just the nodes */ + alpm_list_free(grp->packages); FREE(grp); } -/* Helper function for sorting groups - */ -int _alpm_grp_cmp(const void *g1, const void *g2) -{ - pmgrp_t *grp1 = (pmgrp_t *)g1; - pmgrp_t *grp2 = (pmgrp_t *)g2; - - return(strcmp(grp1->name, grp2->name)); -} - const char SYMEXPORT *alpm_grp_get_name(const pmgrp_t *grp) { ALPM_LOG_FUNC; @@ -74,7 +66,7 @@ const char SYMEXPORT *alpm_grp_get_name(const pmgrp_t *grp) return grp->name; } -const alpm_list_t SYMEXPORT *alpm_grp_get_pkgs(const pmgrp_t *grp) +alpm_list_t SYMEXPORT *alpm_grp_get_pkgs(const pmgrp_t *grp) { ALPM_LOG_FUNC; |