From: Zac Medico Date: Thu, 25 Oct 2007 05:29:01 +0000 (-0000) Subject: Filter atoms that come from sets when generating X-Git-Tag: v2.2_pre1~519 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=aa6e0cdf098ae7930daa2b3bc7bad80d0574d377;p=portage.git Filter atoms that come from sets when generating the list of atoms to record in the world file. svn path=/main/trunk/; revision=8288 --- diff --git a/pym/_emerge/__init__.py b/pym/_emerge/__init__.py index 9eef9b6a3..6ad1c3865 100644 --- a/pym/_emerge/__init__.py +++ b/pym/_emerge/__init__.py @@ -586,6 +586,8 @@ def create_world_atom(pkg_key, metadata, args_set, root_config): be greedy with respect to slots. Unslotted system packages will not be stored in world.""" arg_atom = args_set.findAtomForPackage(pkg_key, metadata) + if not arg_atom: + return None cp = portage.dep_getkey(arg_atom) new_world_atom = cp sets = root_config.settings.sets @@ -1731,12 +1733,15 @@ class depgraph(object): that happen to match arguments are not incorrectly marked as nomerge.""" args_set = self._sets["args"] for myarg, myatom in arg_atoms: - if myatom in args_set: + if myatom in self._set_atoms: continue - args_set.add(myatom) self._set_atoms.add(myatom) - if not oneshot: - myfavorites.append(myatom) + if not self._get_parent_sets(myroot, myatom): + args_set.add(myatom) + if not oneshot: + # Filter out atoms that came from + # sets like system and world. + myfavorites.append(myatom) pprovideddict = pkgsettings.pprovideddict for arg, atom in arg_atoms: try: