From: Zac Medico Date: Thu, 23 Aug 2012 17:10:38 +0000 (-0700) Subject: config: _eapi_cache.clear() after setcpv X-Git-Tag: v2.2.0_alpha123~10 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=905572230b2f156c10faa619e9e4d76b5540173a;p=portage.git config: _eapi_cache.clear() after setcpv --- diff --git a/pym/portage/package/ebuild/config.py b/pym/portage/package/ebuild/config.py index 81e05012e..4d871f428 100644 --- a/pym/portage/package/ebuild/config.py +++ b/pym/portage/package/ebuild/config.py @@ -811,7 +811,6 @@ class config(object): # and subsequent calls to the _init() functions have no effect. portage.output._init(config_root=self['PORTAGE_CONFIGROOT']) portage.data._init(self) - _eapi_cache.clear() if mycpv: self.setcpv(mycpv) @@ -1508,6 +1507,10 @@ class config(object): self.configdict["env"]["PORTAGE_USE"] = \ " ".join(sorted(x for x in use if x[-2:] != '_*')) + # Clear the eapi cache here rather than in the constructor, since + # setcpv triggers lazy instantiation of things like _use_manager. + _eapi_cache.clear() + def _grab_pkg_env(self, penv, container, protected_keys=None): if protected_keys is None: protected_keys = ()