Fix breakage in use_reduce() calls where token_class=Atom is incorrect.
authorZac Medico <zmedico@gentoo.org>
Thu, 26 Aug 2010 18:29:37 +0000 (11:29 -0700)
committerZac Medico <zmedico@gentoo.org>
Thu, 26 Aug 2010 18:29:37 +0000 (11:29 -0700)
pym/portage/dbapi/bintree.py
pym/portage/package/ebuild/doebuild.py

index b4e2407838d81837d11b7e32c64203fb95f2cfa8..8cb59255de6d4f65ecf3ed84a612b21e2bd76879 100644 (file)
@@ -1085,9 +1085,14 @@ class binarytree(object):
                use.sort()
                metadata["USE"] = " ".join(use)
                for k in self._pkgindex_use_evaluated_keys:
+                       if k.endswith('DEPEND'):
+                               token_class = Atom
+                       else:
+                               token_class = None
+
                        try:
                                deps = metadata[k]
-                               deps = use_reduce(deps, uselist=raw_use, token_class=Atom)
+                               deps = use_reduce(deps, uselist=raw_use, token_class=token_class)
                                deps = paren_enclose(deps)
                        except portage.exception.InvalidDependString as e:
                                writemsg("%s: %s\n" % (k, str(e)),
index 9b2e3e8e775536b0c6b52845ffd95ac8bd8a81c2..fa8d8b1390f4a0eceb54d34ecce023bb7add0773 100644 (file)
@@ -1463,7 +1463,13 @@ def _post_src_install_uid_fix(mysettings, out):
                v = mysettings.configdict['pkg'].get(k)
                if v is None:
                        continue
-               v = use_reduce(v, uselist=use, token_class=Atom)
+
+               if k.endswith('DEPEND'):
+                       token_class = Atom
+               else:
+                       token_class = None
+
+               v = use_reduce(v, uselist=use, token_class=token_class)
                v = paren_enclose(v)
                if not v:
                        continue