From: Fabian Groffen Date: Fri, 16 May 2008 21:50:14 +0000 (-0000) Subject: Merged from trunk 10345:10346 X-Git-Url: http://git.tremily.us/gitweb.cgi?a=commitdiff_plain;h=13c8d45a2ef5fa2833397c9e5b844af4983e9706;p=portage.git Merged from trunk 10345:10346 | 10346 | Detect and filter ebuilds that have invalid versions in | | zmedico | portdbapi.cp_list(). | svn path=/main/branches/prefix/; revision=10347 --- diff --git a/pym/portage/dbapi/porttree.py b/pym/portage/dbapi/porttree.py index 3c287a7d6..70135be34 100644 --- a/pym/portage/dbapi/porttree.py +++ b/pym/portage/dbapi/porttree.py @@ -14,7 +14,7 @@ from portage.exception import OperationNotPermitted, PortageException, \ from portage.manifest import Manifest from portage.output import red from portage.util import ensure_dirs, writemsg, apply_recursive_permissions -from portage.versions import pkgcmp, pkgsplit, catpkgsplit, best +from portage.versions import pkgcmp, pkgsplit, catpkgsplit, best, ver_regexp import portage.gpg, portage.checksum @@ -556,6 +556,11 @@ class portdbapi(dbapi): writemsg("\nInvalid ebuild name: %s\n" % \ os.path.join(oroot, mycp, x), noiselevel=-1) continue + ver_match = ver_regexp.match("-".join(ps[1:])) + if ver_match is None or not ver_match.groups(): + writemsg("\nInvalid ebuild version: %s\n" % \ + os.path.join(oroot, mycp, x), noiselevel=-1) + continue d[mysplit[0]+"/"+pf] = None if invalid_category and d: writemsg(("\n!!! '%s' has a category that is not listed in " + \