summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/PackageMerge.py
diff options
context:
space:
mode:
Diffstat (limited to 'pym/_emerge/PackageMerge.py')
-rw-r--r--pym/_emerge/PackageMerge.py12
1 files changed, 5 insertions, 7 deletions
diff --git a/pym/_emerge/PackageMerge.py b/pym/_emerge/PackageMerge.py
index 832eac03b..f8fa04a38 100644
--- a/pym/_emerge/PackageMerge.py
+++ b/pym/_emerge/PackageMerge.py
@@ -1,13 +1,14 @@
# Copyright 1999-2011 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-from _emerge.AsynchronousTask import AsynchronousTask
+from _emerge.CompositeTask import CompositeTask
from portage.output import colorize
-class PackageMerge(AsynchronousTask):
+class PackageMerge(CompositeTask):
__slots__ = ("merge",)
def _start(self):
+ self.scheduler = self.merge.scheduler
pkg = self.merge.pkg
pkg_count = self.merge.pkg_count
@@ -35,8 +36,5 @@ class PackageMerge(AsynchronousTask):
not self.merge.build_opts.buildpkgonly:
self.merge.statusMessage(msg)
- self.merge.merge(self.exit_handler)
-
- def exit_handler(self, task):
- self.returncode = task.returncode
- self.wait()
+ task = self.merge.create_install_task()
+ self._start_task(task, self._default_final_exit)