Gentoo Archives: gentoo-commits

From: "Zac Medico (zmedico)" <zmedico@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] portage r15397 - main/trunk/pym/_emerge
Date: Fri, 19 Feb 2010 20:57:02
Message-Id: E1NiZuC-0004mw-Cn@stork.gentoo.org
1 Author: zmedico
2 Date: 2010-02-19 20:56:55 +0000 (Fri, 19 Feb 2010)
3 New Revision: 15397
4
5 Modified:
6 main/trunk/pym/_emerge/Package.py
7 Log:
8 Use isvalidatom to validate PROVIDE entries.
9
10
11 Modified: main/trunk/pym/_emerge/Package.py
12 ===================================================================
13 --- main/trunk/pym/_emerge/Package.py 2010-02-19 20:45:15 UTC (rev 15396)
14 +++ main/trunk/pym/_emerge/Package.py 2010-02-19 20:56:55 UTC (rev 15397)
15 @@ -7,7 +7,7 @@
16 from itertools import chain
17 import portage
18 from portage.cache.mappings import slot_dict_class
19 -from portage.dep import paren_reduce, use_reduce, \
20 +from portage.dep import isvalidatom, paren_reduce, use_reduce, \
21 paren_normalize, paren_enclose, _slot_re
22 from _emerge.Task import Task
23
24 @@ -289,9 +289,15 @@
25 getattr(self, "_set_" + k.lower())(k, v)
26 elif k in self._use_conditional_keys:
27 try:
28 - use_reduce(paren_reduce(v), matchall=1)
29 + reduced = use_reduce(paren_reduce(v), matchall=1)
30 except portage.exception.InvalidDependString as e:
31 self._pkg._invalid_metadata(k + ".syntax", "%s: %s" % (k, e))
32 + else:
33 + if reduced and k == 'PROVIDE':
34 + for x in portage.flatten(reduced):
35 + if not isvalidatom(x):
36 + self._pkg._invalid_metadata(k + ".syntax",
37 + "%s: %s" % (k, x))
38
39 def _set_inherited(self, k, v):
40 if isinstance(v, basestring):