diff options
author | Zac Medico <zmedico@gentoo.org> | 2007-02-07 21:47:43 +0000 |
---|---|---|
committer | Zac Medico <zmedico@gentoo.org> | 2007-02-07 21:47:43 +0000 |
commit | baf2d12c790630f9e9f74fef08aba887a7fe0a00 (patch) | |
tree | 3d599f42a00cfcd89865902fff0ef01ce6b899e1 | |
parent | 7bab46cb15d81316441db05c078ca01a30230ceb (diff) | |
download | portage-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
-rw-r--r-- | pym/portage/__init__.py | 12 |
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 |