summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZac Medico <zmedico@gentoo.org>2010-03-02 20:13:47 +0000
committerZac Medico <zmedico@gentoo.org>2010-03-02 20:13:47 +0000
commita2d1b29cd7e2c2b1167a9f6745c2765ffab128d8 (patch)
tree4a975db7bc30d5f5ad756ab7ed4c6d1af196413a
parent529bdecc0e461a89b5885c2382af707ba3fbeabf (diff)
downloadportage-a2d1b29cd7e2c2b1167a9f6745c2765ffab128d8.tar.gz
portage-a2d1b29cd7e2c2b1167a9f6745c2765ffab128d8.tar.bz2
portage-a2d1b29cd7e2c2b1167a9f6745c2765ffab128d8.zip
Bug #262647 - Explicitly exclude SRC_URI and other potentially long metadata
variables from config.environ() exports, to avoid potential E2BIG errors from execve calls. (trunk r15347) svn path=/main/branches/2.1.7/; revision=15574
-rw-r--r--pym/portage/__init__.py10
1 files changed, 7 insertions, 3 deletions
diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py
index 0708aead8..9fc0963f1 100644
--- a/pym/portage/__init__.py
+++ b/pym/portage/__init__.py
@@ -1365,9 +1365,6 @@ class config(object):
virtuals ...etc you look in here.
"""
- # Don't include anything that could be extremely long here (like SRC_URI)
- # since that could cause execve() calls to fail with E2BIG errors. For
- # example, see bug #262647.
_setcpv_aux_keys = ('SLOT', 'RESTRICT', 'LICENSE',
'KEYWORDS', 'INHERITED', 'IUSE', 'PROVIDE', 'EAPI',
'PROPERTIES', 'DEFINED_PHASES', 'repository')
@@ -1466,6 +1463,13 @@ class config(object):
# they don't needlessly propagate down into the ebuild environment.
_environ_filter = []
+ # Exclude anything that could be extremely long here (like SRC_URI)
+ # since that could cause execve() calls to fail with E2BIG errors. For
+ # example, see bug #262647.
+ _environ_filter += [
+ 'DEPEND', 'RDEPEND', 'PDEPEND', 'SRC_URI',
+ ]
+
# misc variables inherited from the calling environment
_environ_filter += [
"INFOPATH", "MANPATH", "USER",