summaryrefslogtreecommitdiffstats
path: root/pym
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2007-10-26 04:38:59 +0000
committerZac Medico <zmedico@gentoo.org>2007-10-26 04:38:59 +0000
commitba0491404ac6055b38870901f5ec88d484f3820f (patch)
tree1cbf52b932202e3fc929de868fa45ad17c2fed4d /pym
parentadb42e097ed7d4fb29d42eef7f2fbc790e822773 (diff)
downloadportage-ba0491404ac6055b38870901f5ec88d484f3820f.tar.gz
portage-ba0491404ac6055b38870901f5ec88d484f3820f.tar.bz2
portage-ba0491404ac6055b38870901f5ec88d484f3820f.zip
Prevent premature expansion of old-style virtuals
inside depgraph.select_files(). svn path=/main/trunk/; revision=8306
Diffstat (limited to 'pym')
-rw-r--r--pym/_emerge/__init__.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py
index 0d730b783..17e130c22 100644
--- a/pym/_emerge/__init__.py
+++ b/pym/_emerge/__init__.py
@@ -1685,6 +1685,16 @@ class depgraph(object):
portage.writemsg("!!! Please check ebuild(5) for full details.\n")
portage.writemsg("!!! (Did you specify a version but forget to prefix with '='?)\n")
return (0,[])
+ # Don't expand categories or old-style virtuals here unless
+ # necessary. Expansion of old-style virtuals here causes at
+ # least the following problems:
+ # 1) It's more difficult to determine which set(s) an atom
+ # came from, if any.
+ # 2) It takes away freedom from the resolver to choose other
+ # possible expansions when necessary.
+ if "/" in x:
+ arg_atoms.append((x, x))
+ continue
try:
try:
for db, pkg_type, built, installed, db_keys in dbs: