summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2010-10-26 11:48:42 -0700
committerZac Medico <zmedico@gentoo.org>2010-10-26 11:48:42 -0700
commit0288c187e5f500e42a3981a7bffa00957309a8d1 (patch)
tree4e1aab862e4631bcad1ab97ac309e4437557422d
parent6f7118cd7c20f451e13aa881f81cc248ac8df59b (diff)
downloadportage-0288c187e5f500e42a3981a7bffa00957309a8d1.tar.gz
portage-0288c187e5f500e42a3981a7bffa00957309a8d1.tar.bz2
portage-0288c187e5f500e42a3981a7bffa00957309a8d1.zip
Raise StopIteration from _poll() if needed.
-rw-r--r--pym/_emerge/Scheduler.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py
index 874a4fd73..dfa73c948 100644
--- a/pym/_emerge/Scheduler.py
+++ b/pym/_emerge/Scheduler.py
@@ -325,6 +325,11 @@ class Scheduler(PollScheduler):
if timeout is None:
while True:
+ if not self._poll_event_handlers:
+ self._schedule()
+ if not self._poll_event_handlers:
+ raise StopIteration(
+ "timeout is None and there are no poll() event handlers")
previous_count = len(self._poll_event_queue)
PollScheduler._poll(self, timeout=self._max_display_latency)
self._status_display.display()