From 0e87b1e0e18212efc6a2613547025bf04fe9b715 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Fri, 21 Dec 2007 00:48:56 +0000 Subject: Slightly improved the masked package check inside dep_zapdeps(). (trunk r9006) svn path=/main/branches/2.1.2/; revision=9007 --- pym/portage.py | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/pym/portage.py b/pym/portage.py index d58a7e929..7be824bc8 100644 --- a/pym/portage.py +++ b/pym/portage.py @@ -5210,15 +5210,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 -- cgit v1.2.3-1-g7c22