summaryrefslogtreecommitdiffstats
path: root/bin/emerge
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2007-08-14 06:30:43 +0000
committerZac Medico <zmedico@gentoo.org>2007-08-14 06:30:43 +0000
commit3c447581fe9a848c65cf4225ad8bbc794189f3a2 (patch)
tree140216f53f919065eb621a35ead9611c4e934016 /bin/emerge
parentfc90fd2eb2a0a68b6fb2ac4acd5bb4e66d986609 (diff)
downloadportage-3c447581fe9a848c65cf4225ad8bbc794189f3a2.tar.gz
portage-3c447581fe9a848c65cf4225ad8bbc794189f3a2.tar.bz2
portage-3c447581fe9a848c65cf4225ad8bbc794189f3a2.zip
For bug #188782, keep "nomerge" nodes in the graph during the merge order calculation so that merge order is better in cases where installed packages have unsatisfied dependencies. (trunk r7599)
svn path=/main/branches/2.1.2/; revision=7600
Diffstat (limited to 'bin/emerge')
-rwxr-xr-xbin/emerge6
1 files changed, 2 insertions, 4 deletions
diff --git a/bin/emerge b/bin/emerge
index 805e86e0e..fc7d31d69 100755
--- a/bin/emerge
+++ b/bin/emerge
@@ -2237,9 +2237,6 @@ class depgraph:
self._altlist_cache[reversed] = retlist[:]
return retlist
mygraph=self.digraph.copy()
- for node in mygraph.order[:]:
- if node[-1] == "nomerge":
- mygraph.remove(node)
self._merge_order_bias(mygraph)
myblockers = self.blocker_digraph.copy()
retlist=[]
@@ -2431,7 +2428,8 @@ class depgraph:
prefer_asap = True
for node in selected_nodes:
- retlist.append(list(node))
+ if node[-1] != "nomerge":
+ retlist.append(list(node))
mygraph.remove(node)
if not reversed and not circular_blocks and myblockers.contains(node):
"""This node may have invalidated one or more blockers."""