summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/resolver
diff options
context:
space:
mode:
authorSebastian Luther <SebastianLuther@gmx.de>2010-10-05 20:05:32 +0200
committerZac Medico <zmedico@gentoo.org>2010-10-05 14:44:35 -0700
commit9ff5e9731142d389373ea6ebc949919c3b637110 (patch)
treee2c4e6112fa714901b64930af02817274f8b570a /pym/_emerge/resolver
parent33e80959e7a7996ee78320a18922c16bafe66c21 (diff)
downloadportage-9ff5e9731142d389373ea6ebc949919c3b637110.tar.gz
portage-9ff5e9731142d389373ea6ebc949919c3b637110.tar.bz2
portage-9ff5e9731142d389373ea6ebc949919c3b637110.zip
Mask packages that don't satisfy all atoms.
This also fixes a logic error in resolver/backtracking/Backtracker._feedback_slot_conflict()
Diffstat (limited to 'pym/_emerge/resolver')
-rw-r--r--pym/_emerge/resolver/backtracking.py7
1 files changed, 2 insertions, 5 deletions
diff --git a/pym/_emerge/resolver/backtracking.py b/pym/_emerge/resolver/backtracking.py
index 9a018cc71..1ffada96f 100644
--- a/pym/_emerge/resolver/backtracking.py
+++ b/pym/_emerge/resolver/backtracking.py
@@ -102,11 +102,8 @@ class Backtracker(object):
new_node.depth += 1
new_node.mask_steps += 1
new_node.terminal = False
- for other_pkg, other_parent_atoms in conflict_data:
- if other_pkg is pkg:
- continue
- new_node.parameter.runtime_pkg_mask.setdefault(
- other_pkg, {})["slot conflict"] = other_parent_atoms
+ new_node.parameter.runtime_pkg_mask.setdefault(
+ pkg, {})["slot conflict"] = parent_atoms
self._add(new_node)