diff options
author | Zac Medico <zmedico@gentoo.org> | 2018-04-28 15:45:56 -0700 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2018-04-28 15:45:56 -0700 |
commit | 3d81af6440cfd20cd007568779d6129083f1de24 (patch) | |
tree | 0294580cfac87fe8f95deac6773f4914e4a5eb19 | |
parent | AsynchronousTask: fix deprecated _wait usage (bug 653856) (diff) | |
download | portage-3d81af64.tar.gz portage-3d81af64.tar.bz2 portage-3d81af64.zip |
AsyncScheduler: fix deprecated _wait usage (bug 653856)
Override AsynchronousTask._async_wait() for cleanup, since
AsynchronousTask._wait() is deprecated.
Bug: https://bugs.gentoo.org/653856
-rw-r--r-- | pym/portage/util/_async/AsyncScheduler.py | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/pym/portage/util/_async/AsyncScheduler.py b/pym/portage/util/_async/AsyncScheduler.py index 1b870c771..2ddbaa885 100644 --- a/pym/portage/util/_async/AsyncScheduler.py +++ b/pym/portage/util/_async/AsyncScheduler.py @@ -29,12 +29,11 @@ class AsyncScheduler(AsynchronousTask, PollScheduler): def _poll(self): if not (self._is_work_scheduled() or self._keep_scheduling()): - self._cleanup() - if self._error_count > 0: self.returncode = 1 else: self.returncode = os.EX_OK + self._async_wait() return self.returncode def _cancel(self): @@ -91,7 +90,17 @@ class AsyncScheduler(AsynchronousTask, PollScheduler): self._event_loop.source_remove(self._loadavg_check_id) self._loadavg_check_id = None + def _async_wait(self): + """ + Override _async_wait to call self._cleanup(). + """ + self._cleanup() + super(AsyncScheduler, self)._async_wait() + def _wait(self): + """ + Deprecated. Use _async_wait() instead. + """ # Loop while there are jobs to be scheduled. while self._keep_scheduling(): self._event_loop.iteration() |