For bug #165783, handle a potential InvalidDependString exception inside doebuild...
authorZac Medico <zmedico@gentoo.org>
Wed, 7 Feb 2007 22:25:01 +0000 (22:25 -0000)
committerZac Medico <zmedico@gentoo.org>
Wed, 7 Feb 2007 22:25:01 +0000 (22:25 -0000)
svn path=/main/branches/2.1.2/; revision=5921

pym/portage.py

index bfacca09cc21684d270ca051a7a760f2df7c6578..a3dcd7b06b22a0ea919967c224ee62a42672020b 100644 (file)
@@ -3533,10 +3533,16 @@ def doebuild(myebuild, mydo, myroot, mysettings, debug=0, listonly=0,
                # Make sure we get the correct tree in case there are overlays.
                mytree = os.path.realpath(
                        os.path.dirname(os.path.dirname(mysettings["O"])))
-               newuris, alist = mydbapi.getfetchlist(
-                       mycpv, mytree=mytree, mysettings=mysettings)
-               alluris, aalist = mydbapi.getfetchlist(
-                       mycpv, mytree=mytree, all=True, mysettings=mysettings)
+               try:
+                       newuris, alist = mydbapi.getfetchlist(
+                               mycpv, mytree=mytree, mysettings=mysettings)
+                       alluris, aalist = mydbapi.getfetchlist(
+                               mycpv, mytree=mytree, all=True, mysettings=mysettings)
+               except portage_exception.InvalidDependString, e:
+                       writemsg("!!! %s\n" % str(e), noiselevel=-1)
+                       writemsg("!!! Invalid SRC_URI for '%s'.\n" % mycpv, noiselevel=-1)
+                       del e
+                       return 1
                mysettings["A"] = " ".join(alist)
                mysettings["AA"] = " ".join(aalist)
                if ("mirror" in features) or fetchall: