From d1a3c0f5ab81d1dbf70c0b8e5322cfb2d11b8ce7 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Fri, 30 Sep 2011 01:30:00 -0700 Subject: depgraph: pull in new-style virtuals more This causes new-style virtuals to get pulled in for virtuals that are already satisfied by installed old-style virtuals. This case is common, due to PROVIDE being (removed without revision bump) from lots of ebuilds. --- pym/_emerge/depgraph.py | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'pym/_emerge/depgraph.py') diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index da61709e7..9638ce9a7 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -3953,6 +3953,12 @@ class depgraph(object): e_pkg = self._dynamic_config._slot_pkg_map[root].get(pkg.slot_atom) if not e_pkg: break + + if e_pkg.cp != atom_cp and \ + self._have_new_virt(root, atom_cp): + # pull in a new-style virtual instead + break + # Use PackageSet.findAtomForPackage() # for PROVIDE support. if atom_set.findAtomForPackage(e_pkg, modified_use=self._pkg_use_enabled(e_pkg)): -- cgit v1.2.3-1-g7c22