From 127a297b2b01c82fd90c2557c1cb1fd803620ec8 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Sun, 20 Sep 2009 22:59:04 +0000 Subject: Fix depgraph._validate_blockers() so that it doesn't do prohibited Atom(Atom) constructor calls. svn path=/main/trunk/; revision=14305 --- pym/_emerge/depgraph.py | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py index 33cb7b5ee..33461ad75 100644 --- a/pym/_emerge/depgraph.py +++ b/pym/_emerge/depgraph.py @@ -2604,8 +2604,7 @@ class depgraph(object): except KeyError: pass if blockers is not None: - blockers = set(str(blocker.atom) \ - for blocker in blockers) + blockers = set(blocker.atom for blocker in blockers) # If this node has any blockers, create a "nomerge" # node for it so that they can be enforced. @@ -2636,7 +2635,7 @@ class depgraph(object): continue if blocker_data: - blocker_atoms = blocker_data.atoms + blocker_atoms = [Atom(atom) for atom in blocker_data.atoms)] else: # Use aux_get() to trigger FakeVartree global # updates on *DEPEND when appropriate. @@ -2675,7 +2674,7 @@ class depgraph(object): show_invalid_depstring_notice(pkg, depstr, atoms) return False blocker_atoms = [myatom for myatom in atoms \ - if myatom.startswith("!")] + if myatom.blocker] blocker_atoms.sort() counter = long(pkg.metadata["COUNTER"]) blocker_cache[cpv] = \ @@ -2683,7 +2682,7 @@ class depgraph(object): if blocker_atoms: try: for atom in blocker_atoms: - blocker = Blocker(atom=portage.dep.Atom(atom), + blocker = Blocker(atom=atom, eapi=pkg.metadata["EAPI"], root=myroot) self._dynamic_config._blocker_parents.add(blocker, pkg) except portage.exception.InvalidAtom as e: -- cgit v1.2.3-1-g7c22