From 7d2fa6927d3a60828f09a0a2cd569038c2c18482 Mon Sep 17 00:00:00 2001 From: Zac Medico Date: Sat, 13 Feb 2010 23:03:39 +0000 Subject: Bug #262647 - Explicitly exclude SRC_URI and other potentially long metadata variables from config.environ() exports, to avoid potential E2BIG errors from execve calls. svn path=/main/trunk/; revision=15347 --- pym/portage/__init__.py | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/pym/portage/__init__.py b/pym/portage/__init__.py index 381701b60..da135cff3 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", -- cgit v1.2.3-1-g7c22