From 2b4d81caa05f5cb5aaf231ca25573c5547583c38 Mon Sep 17 00:00:00 2001 From: David James Date: Wed, 16 Mar 2011 21:54:37 -0700 Subject: Update Scheduler to protect against infinite loop If we have running tasks, but we're not listening to these tasks, we're going to loop forever. So throw an exception in this case. --- pym/_emerge/Scheduler.py | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'pym') diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py index 5d190428f..fa4825cf2 100644 --- a/pym/_emerge/Scheduler.py +++ b/pym/_emerge/Scheduler.py @@ -1681,15 +1681,13 @@ class Scheduler(PollScheduler): self._set_max_jobs(1) while self._schedule(): - if self._poll_event_handlers: - self._poll_loop() + self._poll_loop() while True: self._schedule() if not self._is_work_scheduled(): break - if self._poll_event_handlers: - self._poll_loop() + self._poll_loop() def _keep_scheduling(self): return bool(not self._terminated_tasks and self._pkg_queue and \ -- cgit v1.2.3-1-g7c22