| Index: pym/_emerge/PackageMerge.py
|
| diff --git a/pym/_emerge/PackageMerge.py b/pym/_emerge/PackageMerge.py
|
| index 4aecf8adbb0dd196e1cbcb9d8327da4c94540a58..45d2e7dc67c05fe7510907f89e989485acf968ef 100644
|
| --- a/pym/_emerge/PackageMerge.py
|
| +++ b/pym/_emerge/PackageMerge.py
|
| @@ -4,11 +4,6 @@
|
| from _emerge.AsynchronousTask import AsynchronousTask
|
| from portage.output import colorize
|
| class PackageMerge(AsynchronousTask):
|
| - """
|
| - TODO: Implement asynchronous merge so that the scheduler can
|
| - run while a merge is executing.
|
| - """
|
| -
|
| __slots__ = ("merge",)
|
|
|
| def _start(self):
|
| @@ -40,6 +35,9 @@ class PackageMerge(AsynchronousTask):
|
| not self.merge.build_opts.buildpkgonly:
|
| self.merge.statusMessage(msg)
|
|
|
| - self.returncode = self.merge.merge()
|
| - self.wait()
|
| + self.merge.merge(self.exit_handler)
|
| +
|
| + def exit_handler(self, task):
|
| + self.returncode = task.returncode
|
| + self._wait_hook()
|
|
|
|
|