summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2009-01-13 21:02:30 +0000
committerZac Medico <zmedico@gentoo.org>2009-01-13 21:02:30 +0000
commit9428e019c30685c82db2449164b0028c5e633ede (patch)
treeefa924316d79531d3139af01d51a9d9b4321fc9e
parentSimplify depgraph._select_pkg_from_graph() by using match_pkgs(). (diff)
downloadportage-multirepo-9428e019c30685c82db2449164b0028c5e633ede.tar.gz
portage-multirepo-9428e019c30685c82db2449164b0028c5e633ede.tar.bz2
portage-multirepo-9428e019c30685c82db2449164b0028c5e633ede.zip
Bug #254860 - Inside _expand_new_virtuals(), generate instances of Atom
instead of plain strings, so calling code can assume that only Atom instances will be returned when strict mode is enabled. svn path=/main/trunk/; revision=12495
-rw-r--r--pym/portage/__init__.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py
index 8b19354a..52dbd6ba 100644
--- a/pym/portage/__init__.py
+++ b/pym/portage/__init__.py
@@ -6364,13 +6364,14 @@ def _expand_new_virtuals(mysplit, edebug, mydbapi, mysettings, myroot="/",
if len(virtual_atoms) == 1:
# It wouldn't make sense to block all the components of a
# compound virtual, so only a single atom block is allowed.
- a.append("!" + virtual_atoms[0])
+ a.append(portage.dep.Atom("!" + virtual_atoms[0]))
else:
- mycheck[1].append("="+y[0]) # pull in the new-style virtual
+ # pull in the new-style virtual
+ mycheck[1].append(portage.dep.Atom("="+y[0]))
a.append(mycheck[1])
# Plain old-style virtuals. New-style virtuals are preferred.
for y in mychoices:
- a.append(x.replace(mykey, y))
+ a.append(portage.dep.Atom(x.replace(mykey, y, 1)))
if isblocker and not a:
# Probably a compound virtual. Pass the atom through unprocessed.
newsplit.append(x)