From: Zac Medico Date: Sun, 10 Jul 2011 12:05:58 +0000 (-0700) Subject: slot_collision: fix more for bug 374423 X-Git-Tag: v2.2.0_alpha44~29 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=0dfe36c463f2aeca4bbdb15f8aa3bdb2fd60ef86;p=portage.git slot_collision: fix more for bug 374423 --- diff --git a/pym/_emerge/resolver/slot_collision.py b/pym/_emerge/resolver/slot_collision.py index 0069d179d..0df8f20a2 100644 --- a/pym/_emerge/resolver/slot_collision.py +++ b/pym/_emerge/resolver/slot_collision.py @@ -588,6 +588,15 @@ class slot_conflict_handler(object): else: violated_atom = atom.unevaluated_atom.violated_conditionals(_pkg_use_enabled(pkg), \ pkg.iuse.is_valid_flag, parent_use=_pkg_use_enabled(ppkg)) + if violated_atom.use is None: + # It's possible for autounmask to change + # parent_use such that the unevaluated form + # of the atom now matches, even though the + # earlier evaluated form (from before + # autounmask changed parent_use) does not. + # In this case (see bug #374423), it's + # expected that violated_atom.use is None. + continue 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