summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/CompositeTask.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-03-16 18:42:59 -0700
committerZac Medico <zmedico@gentoo.org>2011-03-16 18:42:59 -0700
commit947f4bdcd0303a0170d9e1bac3d0964f747ce36b (patch)
tree7018488da410d561c2fb7227a1548dc1ee12cc01 /pym/_emerge/CompositeTask.py
parent19121602b455da19a2c9a4199362f13444709dc7 (diff)
downloadportage-947f4bdcd0303a0170d9e1bac3d0964f747ce36b.tar.gz
portage-947f4bdcd0303a0170d9e1bac3d0964f747ce36b.tar.bz2
portage-947f4bdcd0303a0170d9e1bac3d0964f747ce36b.zip
CompositeTask: fix assertion in _wait
Diffstat (limited to 'pym/_emerge/CompositeTask.py')
-rw-r--r--pym/_emerge/CompositeTask.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/pym/_emerge/CompositeTask.py b/pym/_emerge/CompositeTask.py
index 4667b7813..b5e8ce5bb 100644
--- a/pym/_emerge/CompositeTask.py
+++ b/pym/_emerge/CompositeTask.py
@@ -49,6 +49,11 @@ class CompositeTask(AsynchronousTask):
# don't wait for the same task more than once
break
if task is prev:
+ if self.returncode is not None:
+ # This is expected if we're being
+ # called from the task's exit listener
+ # after it's been cancelled.
+ break
# Before the task.wait() method returned, an exit
# listener should have set self._current_task to either
# a different task or None. Something is wrong.