diff options
author | Zac Medico <zmedico@gentoo.org> | 2011-04-27 09:13:51 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2011-05-04 12:27:40 -0700 |
commit | a76dd07a2569eb515855ecc6ce3487d39ff8005d (patch) | |
tree | 8fb591dc71bf000b9f9cf9590aa1d7ab6b296983 /pym | |
parent | 4abea4acc567de87264f734428d883fef4e0abb6 (diff) | |
download | portage-a76dd07a2569eb515855ecc6ce3487d39ff8005d.tar.gz portage-a76dd07a2569eb515855ecc6ce3487d39ff8005d.tar.bz2 portage-a76dd07a2569eb515855ecc6ce3487d39ff8005d.zip |
expand_new_virt: don't traverse blockers
Diffstat (limited to 'pym')
-rw-r--r-- | pym/_emerge/actions.py | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/pym/_emerge/actions.py b/pym/_emerge/actions.py index 68b828256..1c6829816 100644 --- a/pym/_emerge/actions.py +++ b/pym/_emerge/actions.py @@ -1295,11 +1295,17 @@ def expand_new_virt(vardb, atom): or it does not match an installed package then it is yielded without any expansion. """ + if not isinstance(atom, Atom): + atom = Atom(atom) traversed = set() stack = [atom] while stack: atom = stack.pop() + if atom.blocker: + yield atom + continue + matches = vardb.match(atom) if not (matches and matches[-1].startswith("virtual/")): yield atom |