From 905572230b2f156c10faa619e9e4d76b5540173a Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Thu, 23 Aug 2012 10:10:38 -0700 Subject: config: _eapi_cache.clear() after setcpv --- pym/portage/package/ebuild/config.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) 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 = () -- cgit v1.2.3-1-g7c22