summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2009-07-06 07:15:01 +0000
committerZac Medico <zmedico@gentoo.org>2009-07-06 07:15:01 +0000
commitb6e900218ccf1acf7003c2b35a76317efc64ec8d (patch)
tree2d43af9a1012e5e5f4181035c07666dd942ec6e0
parentd85f027779dd6a04f01cb86d0ed222819026cee1 (diff)
downloadportage-b6e900218ccf1acf7003c2b35a76317efc64ec8d.tar.gz
portage-b6e900218ccf1acf7003c2b35a76317efc64ec8d.tar.bz2
portage-b6e900218ccf1acf7003c2b35a76317efc64ec8d.zip
Use PackageSet.findAtomForPackage() when matching the existing node against
the atom inside _select_pkg_highest_available_imp(), for PROVIDE support. svn path=/main/trunk/; revision=13794
-rw-r--r--pym/_emerge/depgraph.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
index 5bc4275fa..c02e50ca4 100644
--- a/pym/_emerge/depgraph.py
+++ b/pym/_emerge/depgraph.py
@@ -2000,6 +2000,7 @@ class depgraph(object):
if not isinstance(atom, portage.dep.Atom):
atom = portage.dep.Atom(atom)
atom_cp = atom.cp
+ atom_set = InternalPackageSet(initial_atoms=(atom,))
existing_node = None
myeb = None
usepkgonly = "--usepkgonly" in self._frozen_config.myopts
@@ -2135,7 +2136,9 @@ class depgraph(object):
e_pkg = self._dynamic_config._slot_pkg_map[root].get(pkg.slot_atom)
if not e_pkg:
break
- if portage.dep.match_from_list(atom, [e_pkg]):
+ # Use PackageSet.findAtomForPackage()
+ # for PROVIDE support.
+ if atom_set.findAtomForPackage(e_pkg):
if highest_version and \
e_pkg.cp == atom_cp and \
e_pkg < highest_version and \