summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--pym/_emerge/Scheduler.py14
1 files changed, 8 insertions, 6 deletions
diff --git a/pym/_emerge/Scheduler.py b/pym/_emerge/Scheduler.py
index 00c27925b..f2247578b 100644
--- a/pym/_emerge/Scheduler.py
+++ b/pym/_emerge/Scheduler.py
@@ -816,19 +816,21 @@ class Scheduler(PollScheduler):
self.pkgsettings[root] = portage.config(
clone=root_config.settings)
+ keep_going = "--keep-going" in self.myopts
+ fetchonly = self._build_opts.fetchonly
+ mtimedb = self._mtimedb
+ failed_pkgs = self._failed_pkgs
+
rval = self._generate_digests()
if rval != os.EX_OK:
return rval
+ # TODO: Immediately recalculate deps here if --keep-going
+ # is enabled and corrupt manifests are detected.
rval = self._check_manifests()
- if rval != os.EX_OK:
+ if rval != os.EX_OK and not keep_going:
return rval
- keep_going = "--keep-going" in self.myopts
- fetchonly = self._build_opts.fetchonly
- mtimedb = self._mtimedb
- failed_pkgs = self._failed_pkgs
-
while True:
rval = self._merge()
if rval == os.EX_OK or fetchonly or not keep_going: