summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'pym/portage/__init__.py')
-rw-r--r--pym/portage/__init__.py12
1 files changed, 8 insertions, 4 deletions
diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py
index 785498e7..e734f9ad 100644
--- a/pym/portage/__init__.py
+++ b/pym/portage/__init__.py
@@ -2205,7 +2205,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")
@@ -2231,9 +2230,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:
@@ -2303,6 +2299,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))