1 |
Author: zmedico |
2 |
Date: 2009-06-30 23:22:52 +0000 (Tue, 30 Jun 2009) |
3 |
New Revision: 13750 |
4 |
|
5 |
Modified: |
6 |
main/trunk/pym/_emerge/create_world_atom.py |
7 |
main/trunk/pym/portage/__init__.py |
8 |
Log: |
9 |
Always use dep_getkey() when using profile virtuals values, since at least |
10 |
/profiles/base/virtuals contains an atom with an operator (virtual/pam maps |
11 |
to >=sys-libs/pam-0.78). |
12 |
|
13 |
|
14 |
Modified: main/trunk/pym/_emerge/create_world_atom.py |
15 |
=================================================================== |
16 |
--- main/trunk/pym/_emerge/create_world_atom.py 2009-06-30 23:03:34 UTC (rev 13749) |
17 |
+++ main/trunk/pym/_emerge/create_world_atom.py 2009-06-30 23:22:52 UTC (rev 13750) |
18 |
@@ -89,7 +89,8 @@ |
19 |
# pulled in by update or depclean. |
20 |
providers = portdb.mysettings.getvirtuals().get( |
21 |
portage.dep_getkey(system_atom)) |
22 |
- if providers and len(providers) == 1 and providers[0] == cp: |
23 |
+ if providers and len(providers) == 1 and \ |
24 |
+ portage.dep_getkey(providers[0]) == cp: |
25 |
return None |
26 |
return new_world_atom |
27 |
|
28 |
|
29 |
Modified: main/trunk/pym/portage/__init__.py |
30 |
=================================================================== |
31 |
--- main/trunk/pym/portage/__init__.py 2009-06-30 23:03:34 UTC (rev 13749) |
32 |
+++ main/trunk/pym/portage/__init__.py 2009-06-30 23:22:52 UTC (rev 13750) |
33 |
@@ -6848,7 +6848,7 @@ |
34 |
mychoices = myvirtuals.get(mykey, None) |
35 |
if mychoices: |
36 |
if len(mychoices) == 1: |
37 |
- a = x.replace(mykey, mychoices[0]) |
38 |
+ a = x.replace(mykey, dep_getkey(mychoices[0]), 1) |
39 |
else: |
40 |
if x[0]=="!": |
41 |
# blocker needs "and" not "or(||)". |
42 |
@@ -6856,7 +6856,7 @@ |
43 |
else: |
44 |
a=['||'] |
45 |
for y in mychoices: |
46 |
- a.append(x.replace(mykey, y)) |
47 |
+ a.append(x.replace(mykey, dep_getkey(y), 1)) |
48 |
newsplit.append(a) |
49 |
else: |
50 |
newsplit.append(x) |
51 |
@@ -7017,7 +7017,8 @@ |
52 |
a.append(portage.dep.Atom(x.replace(mykey, y, 1))) |
53 |
else: |
54 |
for y in mychoices: |
55 |
- new_atom = portage.dep.Atom(x.replace(mykey, y, 1)) |
56 |
+ new_atom = portage.dep.Atom( |
57 |
+ x.replace(mykey, dep_getkey(y), 1)) |
58 |
matches = portdb.match(new_atom) |
59 |
# portdb is an instance of depgraph._dep_check_composite_db, so |
60 |
# USE conditionals are already evaluated. |
61 |
@@ -7028,7 +7029,7 @@ |
62 |
if not a and not isblocker and mychoices: |
63 |
# Check for a virtual package.provided match. |
64 |
for y in mychoices: |
65 |
- new_atom = portage.dep.Atom(x.replace(mykey, y, 1)) |
66 |
+ new_atom = portage.dep.Atom(x.replace(mykey, dep_getkey(y), 1)) |
67 |
if match_from_list(new_atom, |
68 |
pprovideddict.get(new_atom.cp, [])): |
69 |
a.append(new_atom) |