diff options
author | Zac Medico <zmedico@gentoo.org> | 2009-03-31 07:12:00 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2009-03-31 07:12:00 +0000 |
commit | f1067aec4ce6ea71277b04d06b841af9c500ee57 (patch) | |
tree | 244218e1fbc04cbb171d80a0a2f2d87201ef48c1 | |
parent | cfad16b102584a58bf2f57f5e96a30b3d4777891 (diff) | |
download | portage-f1067aec4ce6ea71277b04d06b841af9c500ee57.tar.gz portage-f1067aec4ce6ea71277b04d06b841af9c500ee57.tar.bz2 portage-f1067aec4ce6ea71277b04d06b841af9c500ee57.zip |
In MetadataRegen._metadata_exit(), notify the consumer of failures (in this
case the metadata argument is None).
svn path=/main/trunk/; revision=13258
-rw-r--r-- | pym/_emerge/__init__.py | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index e325f1f25..2a372d78c 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -11712,18 +11712,21 @@ class MetadataRegen(PollScheduler): def _metadata_exit(self, metadata_process): self._jobs -= 1 - if metadata_process.returncode == os.EX_OK: - if self._consumer is not None: - self._consumer(metadata_process.cpv, - metadata_process.ebuild_path, - metadata_process.repo_path, - metadata_process.metadata) - else: + if metadata_process.returncode != os.EX_OK: self.returncode = 1 self._error_count += 1 self._valid_pkgs.discard(metadata_process.cpv) portage.writemsg("Error processing %s, continuing...\n" % \ (metadata_process.cpv,)) + + if self._consumer is not None: + # On failure, still notify the consumer (in this case the metadata + # argument is None). + self._consumer(metadata_process.cpv, + metadata_process.ebuild_path, + metadata_process.repo_path, + metadata_process.metadata) + self._schedule() class UninstallFailure(portage.exception.PortageException): |