From 2ea19f1a1f6b44cd0ed4d518e7a9404c95d60d88 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Mon, 3 Aug 2009 21:20:22 +0000 Subject: Bug #278729 - Inside dep_zapdeps(), ignore USE dependencies since we don't want USE settings to adversely affect || preference evaluation. Drop invalid atoms inside _expand_new_virtuals() since we only want real Atom instances inside dep_zapdeps(). svn path=/main/trunk/; revision=13881 --- pym/portage/__init__.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index 28f42ba74..a327bd644 100644 --- a/pym/portage/__init__.py +++ b/pym/portage/__init__.py @@ -6918,6 +6918,9 @@ def _expand_new_virtuals(mysplit, edebug, mydbapi, mysettings, myroot="/", if portage.dep._dep_check_strict: raise portage.exception.ParseError( "invalid atom: '%s'" % x) + else: + # Only real Atom instances are allowed past this point. + continue else: if x.blocker and x.blocker.overlap.forbid and \ eapi in ("0", "1") and portage.dep._dep_check_strict: @@ -7139,7 +7142,9 @@ def dep_zapdeps(unreduced, reduced, myroot, use_binaries=0, trees=None): for atom in atoms: if atom[:1] == "!": continue - avail_pkg = mydbapi.match(atom) + # Ignore USE dependencies here since we don't want USE + # settings to adversely affect || preference evaluation. + avail_pkg = mydbapi.match(atom.without_use) if avail_pkg: avail_pkg = avail_pkg[-1] # highest (ascending order) avail_slot = "%s:%s" % (dep_getkey(atom), -- cgit v1.2.3-1-g7c22