From d57e5baf22dccb5160249299e6db039f69a4214d Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Thu, 10 Mar 2011 22:02:19 -0800 Subject: PollScheduler: tweek termination logic * PollScheduler and all subclasses now use the _terminated_tasks variable to check whether or not _terminate_tasks() has been called, and behave appropriately in that case. * The _schedule_tasks() method now has documentation about the relationship with _terminate_tasks() and _terminated_tasks. --- pym/_emerge/Scheduler.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'pym/_emerge/Scheduler.py') diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py index 306c945d7..2f49c3420 100644 --- a/pym/_emerge/Scheduler.py +++ b/pym/_emerge/Scheduler.py @@ -1441,7 +1441,7 @@ class Scheduler(PollScheduler): build_dir=build_dir, build_log=build_log, pkg=pkg, returncode=merge.returncode)) - if not self._terminated.is_set(): + if not self._terminated_tasks: self._failed_pkg_msg(self._failed_pkgs[-1], "install", "to") self._status_display.failed = len(self._failed_pkgs) return @@ -1476,7 +1476,7 @@ class Scheduler(PollScheduler): mtimedb.commit() def _build_exit(self, build): - if build.returncode == os.EX_OK and self._terminated.is_set(): + if build.returncode == os.EX_OK and self._terminated_tasks: # We've been interrupted, so we won't # add this to the merge queue. self.curval += 1 @@ -1505,7 +1505,7 @@ class Scheduler(PollScheduler): build_dir=build_dir, build_log=build_log, pkg=build.pkg, returncode=build.returncode)) - if not self._terminated.is_set(): + if not self._terminated_tasks: self._failed_pkg_msg(self._failed_pkgs[-1], "emerge", "for") self._status_display.failed = len(self._failed_pkgs) self._deallocate_config(build.settings) @@ -1685,7 +1685,7 @@ class Scheduler(PollScheduler): self._poll_loop() def _keep_scheduling(self): - return bool(not self._terminated.is_set() and self._pkg_queue and \ + return bool(not self._terminated_tasks and self._pkg_queue and \ not (self._failed_pkgs and not self._build_opts.fetchonly)) def _is_work_scheduled(self): -- cgit v1.2.3-1-g7c22