From: Marius Mauch Date: Fri, 26 Oct 2007 01:07:06 +0000 (-0000) Subject: break potential cycles in set expansion X-Git-Tag: v2.2_pre1~507 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=7a54724ac539d7af52d75546483dc1c169a6a941;p=portage.git break potential cycles in set expansion svn path=/main/trunk/; revision=8303 --- diff --git a/pym/portage/sets/__init__.py b/pym/portage/sets/__init__.py index 1d39d10ee..315747f10 100644 --- a/pym/portage/sets/__init__.py +++ b/pym/portage/sets/__init__.py @@ -94,12 +94,14 @@ class SetConfig(SafeConfigParser): self.aliases = shortnames return self.aliases - def getSetAtoms(self, setname): + def getSetAtoms(self, setname, ignorelist=[]): myset = self.getSetsWithAliases()[setname] myatoms = myset.getAtoms() + ignorelist.append(setname) for n in myset.getNonAtoms(): if n[0] == SETPREFIX and n[1:] in self.aliases: - myatoms.update(self.getSetAtoms(n)) + if n[1:] not in ignorelist: + myatoms.update(self.getSetAtoms(n), ignorelist=ignorelist) return myatoms def make_default_config(settings, trees):