diff options
author | Aurelien Foret <aurelien@archlinux.org> | 2005-10-10 17:03:35 +0200 |
---|---|---|
committer | Aurelien Foret <aurelien@archlinux.org> | 2005-10-10 17:03:35 +0200 |
commit | 6b7b9787d52ac5e7f36ba18f697bb727d43c4915 (patch) | |
tree | deed2b10bd0519d6b7c86d5cadc825518c836217 /lib/libalpm/alpm.c | |
parent | 5d61a44759dee774e67178097c2f8acffe12836f (diff) | |
download | pacman-6b7b9787d52ac5e7f36ba18f697bb727d43c4915.tar.gz pacman-6b7b9787d52ac5e7f36ba18f697bb727d43c4915.tar.xz |
- more sanity checks
- alpm_pkg_free can now return an error code
Diffstat (limited to 'lib/libalpm/alpm.c')
-rw-r--r-- | lib/libalpm/alpm.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/lib/libalpm/alpm.c b/lib/libalpm/alpm.c index ebb01221..427c536b 100644 --- a/lib/libalpm/alpm.c +++ b/lib/libalpm/alpm.c @@ -394,8 +394,7 @@ void *alpm_pkg_getinfo(pmpkg_t *pkg, unsigned char parm) } break; /* Depends entry */ - /* ORE - not needed: the cache is loaded with DEPENDS by default + /* not needed: the cache is loaded with DEPENDS by default case PM_PKG_DEPENDS: case PM_PKG_REQUIREDBY: case PM_PKG_CONFLICTS: @@ -473,9 +472,14 @@ int alpm_pkg_load(char *filename, pmpkg_t **pkg) return(0); } -void alpm_pkg_free(pmpkg_t *pkg) +int alpm_pkg_free(pmpkg_t *pkg) { + ASSERT(pkg != NULL, RET_ERR(PM_ERR_WRONG_ARGS, -1)); + ASSERT(pkg->origin != PKG_FROM_CACHE, RET_ERR(PM_ERR_XXX, -1)); + pkg_free(pkg); + + return(0); } int alpm_pkg_vercmp(const char *ver1, const char *ver2) @@ -542,6 +546,7 @@ void *alpm_trans_getinfo(unsigned char parm) /* Sanity checks */ ASSERT(handle != NULL, return(NULL)); + ASSERT(handle->trans != NULL, return(NULL)); trans = handle->trans; |