summaryrefslogtreecommitdiffstats
path: root/pym
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2008-07-08 16:59:40 +0000
committerZac Medico <zmedico@gentoo.org>2008-07-08 16:59:40 +0000
commit572fc99bdcd57c911c60f767688f597a23cbe2ef (patch)
treea21c6fc2e1eba413f495337d7b48a89d80aff279 /pym
parent750abd4c47104148aaebc62fb9332b34109f4399 (diff)
downloadportage-572fc99bdcd57c911c60f767688f597a23cbe2ef.tar.gz
portage-572fc99bdcd57c911c60f767688f597a23cbe2ef.tar.bz2
portage-572fc99bdcd57c911c60f767688f597a23cbe2ef.zip
Fix infinite loop in CompositeTask._wait().
svn path=/main/trunk/; revision=10986
Diffstat (limited to 'pym')
-rw-r--r--pym/_emerge/__init__.py5
1 files changed, 4 insertions, 1 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py
index d7cd8fa11..f0a0a687c 100644
--- a/pym/_emerge/__init__.py
+++ b/pym/_emerge/__init__.py
@@ -1579,11 +1579,14 @@ class CompositeTask(AsynchronousTask):
def _wait(self):
+ prev = None
while True:
task = self._current_task
- if task is None:
+ if task is None or task is prev:
+ # don't wait for the same task more than once
break
task.wait()
+ prev = task
return self.returncode