summaryrefslogtreecommitdiffstats
path: root/lib/libalpm/group.c
diff options
context:
space:
mode:
authorDan McGee <dan@archlinux.org>2008-01-12 08:13:52 +0100
committerDan McGee <dan@archlinux.org>2008-03-23 20:51:51 +0100
commitbf8670036907b3ede18d37b7a3f0f7e14542a5ac (patch)
tree8352859ea5c9f2b40fe1c091f1f23c3651db153a /lib/libalpm/group.c
parent90a48c771d727e3bd231eeb1611dfcbecb88490c (diff)
downloadpacman-bf8670036907b3ede18d37b7a3f0f7e14542a5ac.tar.gz
pacman-bf8670036907b3ede18d37b7a3f0f7e14542a5ac.tar.xz
Switch pmgrp_t to dynamic allocation, general group cleanup
Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'lib/libalpm/group.c')
-rw-r--r--lib/libalpm/group.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/libalpm/group.c b/lib/libalpm/group.c
index 050bcbd5..e9e7d008 100644
--- a/lib/libalpm/group.c
+++ b/lib/libalpm/group.c
@@ -31,13 +31,14 @@
#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,7 +51,9 @@ 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);
}
@@ -74,7 +77,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;