summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2011-07-27 03:34:09 -0700
committerZac Medico <zmedico@gentoo.org>2011-07-27 03:34:09 -0700
commit7bc0f420943278f3efcbb2e33c949c393ab99a09 (patch)
tree078e2fffb81236a0d43e7372d039c73fe268a740
parent9a31128ea29f2fb3f4bde03273d671a0e01332bf (diff)
downloadportage-7bc0f420943278f3efcbb2e33c949c393ab99a09.tar.gz
portage-7bc0f420943278f3efcbb2e33c949c393ab99a09.tar.bz2
portage-7bc0f420943278f3efcbb2e33c949c393ab99a09.zip
depgraph: handle invalid SRC_URI
This is a minimal fix for bug #376577.
-rw-r--r--pym/_emerge/resolver/output.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/pym/_emerge/resolver/output.py b/pym/_emerge/resolver/output.py
index 69a30ccd0..05e316a66 100644
--- a/pym/_emerge/resolver/output.py
+++ b/pym/_emerge/resolver/output.py
@@ -26,6 +26,7 @@ from _emerge.Blocker import Blocker
from _emerge.create_world_atom import create_world_atom
from _emerge.resolver.output_helpers import ( _DisplayConfig, _tree_display,
_PackageCounters, _create_use_string, _format_size, _calc_changelog, PkgInfo)
+from _emerge.show_invalid_depstring_notice import show_invalid_depstring_notice
if sys.hexversion >= 0x3000000:
basestring = str
@@ -312,8 +313,12 @@ class Display(object):
try:
myfilesdict = self.portdb.getfetchsizes(pkg.cpv,
useflags=pkg_info.use, myrepo=pkg.repo)
- except InvalidDependString:
- # should have been masked before it was selected
+ except InvalidDependString as e:
+ # FIXME: validate SRC_URI earlier
+ depstr, = self.portdb.aux_get(pkg.cpv,
+ ["SRC_URI"], myrepo=pkg.repo)
+ show_invalid_depstring_notice(
+ pkg, depstr, str(e))
raise
if myfilesdict is None:
myfilesdict = "[empty/missing/bad digest]"