From: Zac Medico Date: Thu, 30 Apr 2009 06:50:34 +0000 (-0000) Subject: In MetadataRegen._metadata_exit(), notify the consumer of failures (in this X-Git-Tag: v2.1.6.12~136 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=2cbc89ea5c4acbb136d113ce8410f65e678852f2;p=portage.git In MetadataRegen._metadata_exit(), notify the consumer of failures (in this case the metadata argument is None). (trunk r13258) svn path=/main/branches/2.1.6/; revision=13437 --- diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index de8b01cab..a56eb0394 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -11696,18 +11696,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):