diff options
author | Zac Medico <zmedico@gentoo.org> | 2007-12-21 00:47:16 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2007-12-21 00:47:16 +0000 |
commit | a90530ab29c7db0aadfd341412538e57bab6a1b4 (patch) | |
tree | 876623053a9efa4303b353bd2b8ee9a4cd5d15d0 | |
parent | 0a74c4e0d350017ee8308ba1eca93d351f319552 (diff) | |
download | portage-a90530ab29c7db0aadfd341412538e57bab6a1b4.tar.gz portage-a90530ab29c7db0aadfd341412538e57bab6a1b4.tar.bz2 portage-a90530ab29c7db0aadfd341412538e57bab6a1b4.zip |
Slightly improved the masked package check inside dep_zapdeps().
svn path=/main/trunk/; revision=9006
-rw-r--r-- | pym/portage/__init__.py | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index 8f75a319a..c84ea2a28 100644 --- a/pym/portage/__init__.py +++ b/pym/portage/__init__.py @@ -5230,15 +5230,15 @@ def dep_zapdeps(unreduced, reduced, myroot, use_binaries=0, trees=None): if avail_pkg: avail_slot = "%s:%s" % (dep_getkey(atom), mydbapi.aux_get(avail_pkg, ["SLOT"])[0]) - elif not avail_pkg and \ - (use_binaries or not mydbapi.cp_list(dep_getkey(atom))): - # With --usepkgonly, count installed packages as "available". - # Note that --usepkgonly currently has no package.mask support. - # See bug #149816. - avail_pkg = best(vardb.match(atom)) - if avail_pkg: - avail_slot = "%s:%s" % (dep_getkey(atom), - vardb.aux_get(avail_pkg, ["SLOT"])[0]) + elif not avail_pkg: + has_mask = False + if hasattr(mydbapi, "xmatch"): + has_mask = bool(mydbapi.xmatch("bestmatch-all", atom)) + if (use_binaries or not has_mask): + avail_pkg = best(vardb.match(atom)) + if avail_pkg: + avail_slot = "%s:%s" % (dep_getkey(atom), + vardb.aux_get(avail_pkg, ["SLOT"])[0]) if not avail_pkg: all_available = False break |