Bug #262647 - Explicitly exclude SRC_URI and other potentially long metadata
authorZac Medico <zmedico@gentoo.org>
Tue, 2 Mar 2010 20:13:47 +0000 (20:13 -0000)
committerZac Medico <zmedico@gentoo.org>
Tue, 2 Mar 2010 20:13:47 +0000 (20:13 -0000)
variables from config.environ() exports, to avoid potential E2BIG errors from
execve calls. (trunk r15347)

svn path=/main/branches/2.1.7/; revision=15574

pym/portage/__init__.py

index 0708aead813c6d1ce4788a86872fc8bf19ab8a7c..9fc0963f1618b0449bcd2b41245868ba2f8c162c 100644 (file)
@@ -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",