From 1bfc6ac54a2d67bb43b946cc4455892fd7a3a076 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Thu, 30 Apr 2009 05:29:54 +0000 Subject: In config.setcpv(), move the code that makes sure "pkg" values override "env" values _after_ the reset() call. svn path=/main/trunk/; revision=13418 --- pym/portage/__init__.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'pym') diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index 43a3dfad8..c849227d9 100644 --- a/pym/portage/__init__.py +++ b/pym/portage/__init__.py @@ -2215,7 +2215,6 @@ class config(object): cpv_slot = self.mycpv pkginternaluse = "" iuse = "" - env_configdict = self.configdict["env"] pkg_configdict = self.configdict["pkg"] previous_iuse = pkg_configdict.get("IUSE") @@ -2241,9 +2240,6 @@ class config(object): repository = pkg_configdict.pop("repository", None) if repository is not None: pkg_configdict["PORTAGE_REPO_NAME"] = repository - for k in pkg_configdict: - if k != "USE": - env_configdict.pop(k, None) slot = pkg_configdict["SLOT"] iuse = pkg_configdict["IUSE"] if pkg is None: @@ -2313,6 +2309,14 @@ class config(object): if has_changed: self.reset(keeping_pkg=1,use_cache=use_cache) + # Ensure that "pkg" values are always preferred over "env" values. + # This must occur _after_ the above reset() call, since reset() + # copies values from self.backupenv. + env_configdict = self.configdict['env'] + for k in pkg_configdict: + if k != 'USE': + env_configdict.pop(k, None) + env_configdict.addLazySingleton('ACCEPT_LICENSE', self._lazy_accept_license(self)) -- cgit v1.2.3-1-g7c22