summaryrefslogtreecommitdiffstats
path: root/pym
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2007-02-07 21:47:43 +0000
committerZac Medico <zmedico@gentoo.org>2007-02-07 21:47:43 +0000
commitbaf2d12c790630f9e9f74fef08aba887a7fe0a00 (patch)
tree3d599f42a00cfcd89865902fff0ef01ce6b899e1 /pym
parent7bab46cb15d81316441db05c078ca01a30230ceb (diff)
downloadportage-baf2d12c790630f9e9f74fef08aba887a7fe0a00.tar.gz
portage-baf2d12c790630f9e9f74fef08aba887a7fe0a00.tar.bz2
portage-baf2d12c790630f9e9f74fef08aba887a7fe0a00.zip
For bug #165783, handle a potential InvalidDependString exception inside digestgen().
svn path=/main/trunk/; revision=5916
Diffstat (limited to 'pym')
-rw-r--r--pym/portage/__init__.py12
1 files changed, 9 insertions, 3 deletions
diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py
index ff780c582..5ba744660 100644
--- a/pym/portage/__init__.py
+++ b/pym/portage/__init__.py
@@ -2697,9 +2697,15 @@ def digestgen(myarchives, mysettings, overwrite=1, manifestonly=0, myportdb=None
_doebuild_manifest_exempt_depend += 1
distfiles_map = {}
fetchlist_dict = FetchlistDict(mysettings["O"], mysettings, myportdb)
- for cpv, fetchlist in fetchlist_dict.iteritems():
- for myfile in fetchlist:
- distfiles_map.setdefault(myfile, []).append(cpv)
+ for cpv in fetchlist_dict:
+ try:
+ for myfile in fetchlist_dict[cpv]:
+ distfiles_map.setdefault(myfile, []).append(cpv)
+ except portage_exception.InvalidDependString, e:
+ writemsg("!!! %s\n" % str(e), noiselevel=-1)
+ writemsg("!!! Invalid SRC_URI for '%s'.\n" % cpv, noiselevel=-1)
+ del e
+ return 0
mf = Manifest(mysettings["O"], mysettings["DISTDIR"],
fetchlist_dict=fetchlist_dict)
# Don't require all hashes since that can trigger excessive