diff options
author | Zac Medico <zmedico@gentoo.org> | 2011-03-10 22:02:19 -0800 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2011-03-10 22:02:19 -0800 |
commit | 9411ac7406c6e775998bf6055ca8f022acce9e25 (patch) | |
tree | 3f3ce2da2f612a389d8855ce3f50bb274d4b5ecb /pym/_emerge/Scheduler.py | |
parent | 33946e6594e16d1c8ff493cf71b8587878ec7b29 (diff) | |
download | portage-9411ac7406c6e775998bf6055ca8f022acce9e25.tar.gz portage-9411ac7406c6e775998bf6055ca8f022acce9e25.tar.bz2 portage-9411ac7406c6e775998bf6055ca8f022acce9e25.zip |
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.
Diffstat (limited to 'pym/_emerge/Scheduler.py')
-rw-r--r-- | pym/_emerge/Scheduler.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py index 9f7285634..c6161201a 100644 --- a/pym/_emerge/Scheduler.py +++ b/pym/_emerge/Scheduler.py @@ -1443,7 +1443,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 @@ -1478,7 +1478,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 @@ -1507,7 +1507,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) @@ -1687,7 +1687,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): |