summaryrefslogtreecommitdiffstats
path: root/lib/libalpm/remove.c
diff options
context:
space:
mode:
authorChantry Xavier <shiningxc@gmail.com>2007-07-13 15:30:37 +0200
committerDan McGee <dan@archlinux.org>2007-07-13 16:37:13 +0200
commit1c9f30b9fab998e2d89dd307a90122618d746cb6 (patch)
treed9c29dae15b27e3fddd3a0484dcfcf37718edda6 /lib/libalpm/remove.c
parent8d62835ba18a7fb662c2f3a23b86a16fe1386388 (diff)
downloadpacman-1c9f30b9fab998e2d89dd307a90122618d746cb6.tar.gz
pacman-1c9f30b9fab998e2d89dd307a90122618d746cb6.tar.xz
libalpm/deps.c : fix for remove044 pactest.
Patch from Nagy that makes removedeps use alpm_depcmp. I also renamed removedeps to recursedeps, as it can have a more general usage, and added an include_explicit argument, so we can control if packages explictly installed are added or not. Note: Small changes made by me (Dan) as well- mostly some English grammar correction and a few other cleanups. Signed-off-by: Chantry Xavier <shiningxc@gmail.com> Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'lib/libalpm/remove.c')
-rw-r--r--lib/libalpm/remove.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/libalpm/remove.c b/lib/libalpm/remove.c
index 5315d96c..2a080f85 100644
--- a/lib/libalpm/remove.c
+++ b/lib/libalpm/remove.c
@@ -135,11 +135,6 @@ int _alpm_remove_prepare(pmtrans_t *trans, pmdb_t *db, alpm_list_t **data)
}
}
- if(trans->flags & PM_TRANS_FLAG_RECURSE) {
- _alpm_log(PM_LOG_DEBUG, "finding removable dependencies");
- trans->packages = _alpm_removedeps(db, trans->packages);
- }
-
/* re-order w.r.t. dependencies */
_alpm_log(PM_LOG_DEBUG, "sorting by dependencies");
lp = _alpm_sortbydeps(trans->packages, PM_TRANS_TYPE_REMOVE);
@@ -147,6 +142,11 @@ int _alpm_remove_prepare(pmtrans_t *trans, pmdb_t *db, alpm_list_t **data)
alpm_list_free(trans->packages);
trans->packages = lp;
+ if(trans->flags & PM_TRANS_FLAG_RECURSE) {
+ _alpm_log(PM_LOG_DEBUG, "finding removable dependencies");
+ _alpm_recursedeps(db, &trans->packages, 0);
+ }
+
EVENT(trans, PM_TRANS_EVT_CHECKDEPS_DONE, NULL, NULL);
return(0);