summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAaron Griffin <aaron@archlinux.org>2007-03-12 06:55:14 +0100
committerAaron Griffin <aaron@archlinux.org>2007-03-12 06:55:14 +0100
commit5f15a80274e09fe2dabc80c9dd5f05a1d770e43d (patch)
tree1be0c6115e825f50aaa037f87d0ec43b3342ce49
parent0203fabe544ab54adf4ac9a91904e3b5ba114a8d (diff)
downloadpacman-5f15a80274e09fe2dabc80c9dd5f05a1d770e43d.tar.gz
pacman-5f15a80274e09fe2dabc80c9dd5f05a1d770e43d.tar.xz
* Fixed an error with 'cascade' removal due to creation of a new pmpkg_t struct
(and thus not copying pertinent data w.r.t. reading package files)
-rw-r--r--lib/libalpm/deps.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/lib/libalpm/deps.c b/lib/libalpm/deps.c
index 3f3960a7..55097ed0 100644
--- a/lib/libalpm/deps.c
+++ b/lib/libalpm/deps.c
@@ -535,7 +535,7 @@ alpm_list_t *_alpm_removedeps(pmdb_t *db, alpm_list_t *targs)
for(k = provides; k; k = k->next) {
pmpkg_t *provpkg = k->data;
if(can_remove_package(db, provpkg, newtargs)) {
- pmpkg_t *pkg = _alpm_pkg_new(alpm_pkg_get_name(provpkg), alpm_pkg_get_version(provpkg));
+ pmpkg_t *pkg = _alpm_pkg_dup(provpkg);
_alpm_log(PM_LOG_DEBUG, _("adding '%s' to the targets"), alpm_pkg_get_name(pkg));
@@ -546,7 +546,7 @@ alpm_list_t *_alpm_removedeps(pmdb_t *db, alpm_list_t *targs)
}
FREELISTPTR(provides);
} else if(can_remove_package(db, deppkg, newtargs)) {
- pmpkg_t *pkg = _alpm_pkg_new(deppkg->name, deppkg->version);
+ pmpkg_t *pkg = _alpm_pkg_dup(deppkg);
_alpm_log(PM_LOG_DEBUG, _("adding '%s' to the targets"), alpm_pkg_get_name(pkg));