diff options
author | Zac Medico <zmedico@gentoo.org> | 2008-07-28 21:31:51 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2008-07-28 21:31:51 +0000 |
commit | 854abf1726435e1031d4e261a20a94a6da0db3aa (patch) | |
tree | 488f4a4ca06ddad656ae69f3dbeaf913726201c4 | |
parent | 68452f0261defd314d38b6188b38b3257d45ce55 (diff) | |
download | portage-854abf1726435e1031d4e261a20a94a6da0db3aa.tar.gz portage-854abf1726435e1031d4e261a20a94a6da0db3aa.tar.bz2 portage-854abf1726435e1031d4e261a20a94a6da0db3aa.zip |
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
-rw-r--r-- | pym/_emerge/__init__.py | 3 |
1 files changed, 3 insertions, 0 deletions
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): |