--- portage.py 2005-01-20 17:24:41.000000000 +0000 +++ portage-mod.py 2005-01-21 20:30:16.412149736 +0000 @@ -2120,8 +2120,12 @@ mydigests[myfn] = {} mydigests[myfn][mykey] = myhash if "size" in mydigests[myfn]: - if mydigests[myfn]["size"] != mysize: - raise portage_exception.DigestException, "Conflicting sizes in digest: %(filename)s" % {"filename":myfilename} + try: + if mydigests[myfn]["size"] != mysize: + raise portage_exception.DigestException, "Conflicting sizes in digest: %(filename)s" % {"filename":myfilename} + except portage_exception.DigestException: + print "The digest sizes do not match. Usually this is due to an invalid manifest. Try an emerge sync to fetch a working manifest." + sys.exit( -5 ) else: mydigests[myfn]["size"] = mysize return mydigests