summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/resolver
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-06-21 00:57:59 -0700
committerZac Medico <zmedico@gentoo.org>2011-06-21 00:57:59 -0700
commitbd3a6386eb50fdab72f092a4c0585ef152c7019e (patch)
tree2bc9bd28b756d19ae7f4c83b53d34be5c0d3e721 /pym/_emerge/resolver
parent96ab3f8e703138bbbda0c50bb05998281207a4d4 (diff)
downloadportage-bd3a6386eb50fdab72f092a4c0585ef152c7019e.tar.gz
portage-bd3a6386eb50fdab72f092a4c0585ef152c7019e.tar.bz2
portage-bd3a6386eb50fdab72f092a4c0585ef152c7019e.zip
extract_affecting_use: less strict for installed
Diffstat (limited to 'pym/_emerge/resolver')
-rw-r--r--pym/_emerge/resolver/circular_dependency.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/pym/_emerge/resolver/circular_dependency.py b/pym/_emerge/resolver/circular_dependency.py
index 08dd5c55f..aabc174f2 100644
--- a/pym/_emerge/resolver/circular_dependency.py
+++ b/pym/_emerge/resolver/circular_dependency.py
@@ -6,6 +6,7 @@ from __future__ import print_function
from itertools import chain
from portage.dep import use_reduce, extract_affecting_use, check_required_use, get_required_use_flags
+from portage.exception import InvalidDependString
from portage.output import colorize
from _emerge.DepPrioritySatisfiedRange import DepPrioritySatisfiedRange
@@ -112,8 +113,13 @@ class circular_dependency_handler(object):
parent_atom = atom.unevaluated_atom
break
- affecting_use = extract_affecting_use(dep, parent_atom,
- eapi=parent.metadata["EAPI"])
+ try:
+ affecting_use = extract_affecting_use(dep, parent_atom,
+ eapi=parent.metadata["EAPI"])
+ except InvalidDependString:
+ if not parent.installed:
+ raise
+ affecting_use = set()
# Make sure we don't want to change a flag that is
# a) in use.mask or use.force