aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2018-04-28 15:45:56 -0700
committerZac Medico <zmedico@gentoo.org>2018-04-28 15:45:56 -0700
commit3d81af6440cfd20cd007568779d6129083f1de24 (patch)
tree0294580cfac87fe8f95deac6773f4914e4a5eb19
parentAsynchronousTask: fix deprecated _wait usage (bug 653856) (diff)
downloadportage-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.py13
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()