summaryrefslogtreecommitdiffstats
path: root/pym/_emerge/Scheduler.py
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2012-02-08 20:04:09 -0800
committerZac Medico <zmedico@gentoo.org>2012-02-08 20:04:09 -0800
commit6823977b783a7205154af5f4234fe02982c62666 (patch)
tree5d2d5fe4d158f190e9e09dffad04e5f12b01bfae /pym/_emerge/Scheduler.py
parentc2538626bf1267d2c4fe968ec252d3a7e3d58f9f (diff)
downloadportage-6823977b783a7205154af5f4234fe02982c62666.tar.gz
portage-6823977b783a7205154af5f4234fe02982c62666.tar.bz2
portage-6823977b783a7205154af5f4234fe02982c62666.zip
PollScheduler: remove _poll_loop
We can use iteration() instead, and _poll_loop's exit behavior doesn't seem practical to emulate with glib.MainLoop.
Diffstat (limited to 'pym/_emerge/Scheduler.py')
-rw-r--r--pym/_emerge/Scheduler.py13
1 files changed, 5 insertions, 8 deletions
diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py
index 6502f71c5..12f087119 100644
--- a/pym/_emerge/Scheduler.py
+++ b/pym/_emerge/Scheduler.py
@@ -222,7 +222,6 @@ class Scheduler(PollScheduler):
io_add_watch=self._event_loop.io_add_watch,
iteration=self._event_loop.iteration,
register=self._event_loop.io_add_watch,
- schedule=self._event_loop._poll_loop,
scheduleSetup=self._schedule_setup,
scheduleUnpack=self._schedule_unpack,
source_remove=self._event_loop.source_remove,
@@ -1492,14 +1491,12 @@ class Scheduler(PollScheduler):
if self._opts_no_background.intersection(self.myopts):
self._set_max_jobs(1)
- while self._schedule():
- self.sched_iface.run()
+ self._schedule()
+ while self._keep_scheduling():
+ self.sched_iface.iteration()
- while True:
- self._schedule()
- if not self._is_work_scheduled():
- break
- self.sched_iface.run()
+ while self._is_work_scheduled():
+ self.sched_iface.iteration()
def _keep_scheduling(self):
return bool(not self._terminated_tasks and self._pkg_queue and \