summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/resolver/backtracking.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2012-06-20 14:23:47 -0700
committerZac Medico <zmedico@gentoo.org>2012-06-20 14:23:47 -0700
commite1395684931a0c5991248435f1d47ff0425d326d (patch)
treefb0470d0d3f71fc020fbdf7ef145a24cded57bf9 /pym/_emerge/resolver/backtracking.py
parentfd66f626a5047972439c7aabcb57a7383b0f03cb (diff)
downloadportage-e1395684931a0c5991248435f1d47ff0425d326d.tar.gz
portage-e1395684931a0c5991248435f1d47ff0425d326d.tar.bz2
portage-e1395684931a0c5991248435f1d47ff0425d326d.zip
backtracking: only feedback first slot conflict
Only create BacktrackNode instances for the first conflict which occurred, since the conflicts that occurred later may have been caused by the first conflict.
Diffstat (limited to 'pym/_emerge/resolver/backtracking.py')
-rw-r--r--pym/_emerge/resolver/backtracking.py11
1 files changed, 5 insertions, 6 deletions
diff --git a/pym/_emerge/resolver/backtracking.py b/pym/_emerge/resolver/backtracking.py
index 2f8b6d0b6..e3c5c7d78 100644
--- a/pym/_emerge/resolver/backtracking.py
+++ b/pym/_emerge/resolver/backtracking.py
@@ -132,12 +132,11 @@ class Backtracker(object):
return True
def _feedback_slot_conflicts(self, conflicts_data):
- # This should be ordered such that the backtracker will
- # attempt to solve conflicts which occurred earlier first,
- # since an earlier conflict can be the cause of a conflict
- # which occurs later.
- for slot_data in reversed(conflicts_data):
- self._feedback_slot_conflict(slot_data)
+ # Only create BacktrackNode instances for the first
+ # conflict which occurred, since the conflicts that
+ # occurred later may have been caused by the first
+ # conflict.
+ self._feedback_slot_conflict(conflicts_data[0])
def _feedback_slot_conflict(self, conflict_data):
for pkg, parent_atoms in conflict_data: