summaryrefslogtreecommitdiff
path: root/lib/libalpm/deps.h
diff options
context:
space:
mode:
authorBryan Ischo <bji-keyword-pacman.3644cb@www.ischo.com>2009-03-09 09:56:13 +1300
committerDan McGee <dan@archlinux.org>2009-04-11 14:39:24 -0500
commitdb3e166503386b4f9e456017fd56d8bce84528fe (patch)
tree6be74c28ff430128c8a1a7a3064e32d3fe49d5ec /lib/libalpm/deps.h
parentd70465decc617412db0670c8169ec22421c8e3d1 (diff)
Look in target-list first to resolve dependencies
This fixes a bug introduced by my previous changes which changes the behavior of IgnorePkg/IgnoreGroup to allow the user to remove unresolvable packages from the transaction. The bug is that the target-list was no longer being consulted first to resolve dependencies, which means that if two packages in the sync database satisfied a dependency, and the user explicitly requested one of those two packages in the sync, the other package was still being pulled in. A new test was added, sync993.py, to verify the desired behavior. Signed-off-by: Bryan Ischo <bji-keyword-pacman.3644cb@www.ischo.com> Signed-off-by: Dan McGee <dan@archlinux.org>
Diffstat (limited to 'lib/libalpm/deps.h')
-rw-r--r--lib/libalpm/deps.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/libalpm/deps.h b/lib/libalpm/deps.h
index eb1400bd..94847d8d 100644
--- a/lib/libalpm/deps.h
+++ b/lib/libalpm/deps.h
@@ -49,7 +49,8 @@ alpm_list_t *_alpm_sortbydeps(alpm_list_t *targets, int reverse);
void _alpm_recursedeps(pmdb_t *db, alpm_list_t *targs, int include_explicit);
pmpkg_t *_alpm_resolvedep(pmdepend_t *dep, alpm_list_t *dbs, alpm_list_t *excluding, int prompt);
int _alpm_resolvedeps(pmdb_t *local, alpm_list_t *dbs_sync, pmpkg_t *pkg,
- alpm_list_t **packages, alpm_list_t *remove, alpm_list_t **data);
+ alpm_list_t *preferred, alpm_list_t **packages, alpm_list_t *remove,
+ alpm_list_t **data);
int _alpm_dep_edge(pmpkg_t *pkg1, pmpkg_t *pkg2);
pmdepend_t *_alpm_splitdep(const char *depstring);
pmpkg_t *_alpm_find_dep_satisfier(alpm_list_t *pkgs, pmdepend_t *dep);