From 854abf1726435e1031d4e261a20a94a6da0db3aa Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Mon, 28 Jul 2008 21:31:51 +0000 Subject: Bug #233165 - When waiting for jobs and merges to finish in Scheduler._main_loop(), keep scheduling the merge queue since it doesn't autoschedule, and skip the poll loop if there no event handlers due to synchronous merge tasks being the only things left to do. svn path=/main/trunk/; revision=11249 --- pym/_emerge/__init__.py | 3 +++ 1 file changed, 3 insertions(+) (limited to 'pym/_emerge') diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index 877d64179..5d225a44f 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -9622,6 +9622,9 @@ class Scheduler(PollScheduler): self._poll_loop() while self._jobs or merge_queue: + if merge_queue.schedule() and \ + not self._poll_event_handlers: + continue self._poll_loop() def _schedule_tasks(self): -- cgit v1.2.3-1-g7c22