diff options
author | Zac Medico <zmedico@gentoo.org> | 2010-08-26 09:00:33 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2010-08-26 09:00:33 -0700 |
commit | 5b8328e3ba5b30c84f8244d75a8d16784aae9f17 (patch) | |
tree | 0d827ce3ea41c2dec1fb253adbd4662b68f29397 | |
parent | 19a9f8718f8bde631e086a8ebc984566d1e93513 (diff) | |
download | portage-5b8328e3ba5b30c84f8244d75a8d16784aae9f17.tar.gz portage-5b8328e3ba5b30c84f8244d75a8d16784aae9f17.tar.bz2 portage-5b8328e3ba5b30c84f8244d75a8d16784aae9f17.zip |
In slot_conflict_handler(), never pass parent_use to
Atom.violated_conditionals since the USE conditionals should have been
evaluated in dep_check() and we don't want to accidentally pass a
DependencyArg instance into _pkg_use_enabled().
-rw-r--r-- | pym/_emerge/resolver/slot_collision.py | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/pym/_emerge/resolver/slot_collision.py b/pym/_emerge/resolver/slot_collision.py index 27cad3b99..77f527ffd 100644 --- a/pym/_emerge/resolver/slot_collision.py +++ b/pym/_emerge/resolver/slot_collision.py @@ -257,8 +257,7 @@ class slot_conflict_handler(object): conditional_matches = set() for ppkg, atom, other_pkg in parents: violated_atom = atom.unevaluated_atom.violated_conditionals( \ - _pkg_use_enabled(other_pkg), other_pkg.iuse.is_valid_flag, \ - _pkg_use_enabled(ppkg)) + _pkg_use_enabled(other_pkg), other_pkg.iuse.is_valid_flag) if use in violated_atom.use.enabled.union(violated_atom.use.disabled): hard_matches.add((ppkg, atom)) else: @@ -465,10 +464,10 @@ class slot_conflict_handler(object): #We cannot assume that it's possible to reinstall the package. Do not #check if some of its atom has use.conditional violated_atom = atom.violated_conditionals(_pkg_use_enabled(pkg), \ - pkg.iuse.is_valid_flag, _pkg_use_enabled(ppkg)) + pkg.iuse.is_valid_flag) else: violated_atom = atom.unevaluated_atom.violated_conditionals(_pkg_use_enabled(pkg), \ - pkg.iuse.is_valid_flag, _pkg_use_enabled(ppkg)) + pkg.iuse.is_valid_flag) if pkg.installed and (violated_atom.use.enabled or violated_atom.use.disabled): #We can't change USE of an installed package (only of an ebuild, but that is already |