summaryrefslogtreecommitdiffstats
path: root/pym
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2010-12-15 18:41:24 -0800
committerZac Medico <zmedico@gentoo.org>2010-12-16 01:04:18 -0800
commit718b66431a21ea7586de755de0327e4c95afcb37 (patch)
treeb512dd944f42126ea85736e687ed0b745f058334 /pym
parent68ec5f5a93b0e4e1d40fa3c162e9fbfb79be1688 (diff)
downloadportage-718b66431a21ea7586de755de0327e4c95afcb37.tar.gz
portage-718b66431a21ea7586de755de0327e4c95afcb37.tar.bz2
portage-718b66431a21ea7586de755de0327e4c95afcb37.zip
Atom.without_use: handle unevaluated_atom.use
Atom.unevaluated_atom.use is used for IUSE checks when matching packages, so it must not propagate to Atom.without_use.
Diffstat (limited to 'pym')
-rw-r--r--pym/portage/dep/__init__.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/pym/portage/dep/__init__.py b/pym/portage/dep/__init__.py
index 1f956e39b..52009fea3 100644
--- a/pym/portage/dep/__init__.py
+++ b/pym/portage/dep/__init__.py
@@ -1134,7 +1134,14 @@ class Atom(_atom_base):
without_use = Atom(m.group('without_use'), allow_repo=allow_repo)
else:
use = None
- without_use = self
+ if unevaluated_atom is not None and \
+ unevaluated_atom.use is not None:
+ # unevaluated_atom.use is used for IUSE checks when matching
+ # packages, so it must not propagate to without_use
+ without_use = Atom(s, allow_wildcard=allow_wildcard,
+ allow_repo=allow_repo)
+ else:
+ without_use = self
self.__dict__['use'] = use
self.__dict__['without_use'] = without_use