summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pym/_emerge/__init__.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py
index 48e5ca6f2..3c94d61f2 100644
--- a/pym/_emerge/__init__.py
+++ b/pym/_emerge/__init__.py
@@ -7610,6 +7610,7 @@ class Scheduler(object):
self._pkg_count = self._pkg_count_class(
curval=0, maxval=merge_count)
self._max_jobs = 1
+ self._set_digraph(digraph)
self._jobs = 0
features = self.settings.features
@@ -7635,6 +7636,13 @@ class Scheduler(object):
except EnvironmentError:
pass
+ def _set_digraph(self, digraph):
+ if self._max_jobs < 2:
+ # save some memory
+ self._digraph = None
+ else:
+ self._digraph = digraph
+
class _pkg_failure(portage.exception.PortageException):
"""
An instance of this class is raised by unmerge() when
@@ -8103,6 +8111,8 @@ class Scheduler(object):
mylist = mydepgraph.altlist()
mydepgraph.break_refs(mylist)
mydepgraph.break_refs(dropped_tasks)
+ mydepgraph.break_refs(mydepgraph.digraph.order)
+ self._set_digraph(mydepgraph.digraph)
return (mylist, dropped_tasks)
def _show_list(self):