Merged from trunk 7598:7599
authorFabian Groffen <grobian@gentoo.org>
Tue, 14 Aug 2007 19:04:00 +0000 (19:04 -0000)
committerFabian Groffen <grobian@gentoo.org>
Tue, 14 Aug 2007 19:04:00 +0000 (19:04 -0000)
   | 7599    | For bug #188782, keep "nomerge" nodes in the graph during    |
   | zmedico | the merge order calculation so that merge order is better in |
   |         | cases where installed packages have unsatisfied              |
   |         | dependencies.                                                |

svn path=/main/branches/prefix/; revision=7601

pym/emerge/__init__.py

index 413f7d5d56472cd003dc5d9313abc94cd3b3bebc..3c7e532c753cd69b00b4b31d77a119e67dc61725 100644 (file)
@@ -2186,9 +2186,6 @@ class depgraph(object):
                        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=[]
@@ -2380,7 +2377,8 @@ class depgraph(object):
                        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."""