From 2cbc89ea5c4acbb136d113ce8410f65e678852f2 Mon Sep 17 00:00:00 2001
From: Zac Medico <zmedico@gentoo.org>
Date: Thu, 30 Apr 2009 06:50:34 +0000
Subject: [PATCH] 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
---
 pym/_emerge/__init__.py | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

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):
-- 
2.26.2