From: Nuno Lopes Date: Sun, 7 Apr 2013 06:32:20 +0000 (-0400) Subject: leave a sane environment behind (even if empty) when exiting X-Git-Tag: php-5.6.0alpha1~448^2~57^2~6 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=1a71bf646e799851dacb2fbe1a439f21543ca590;p=php leave a sane environment behind (even if empty) when exiting some OS atexit() handlers call getenv() --- diff --git a/sapi/cli/ps_title.c b/sapi/cli/ps_title.c index 8dc46094dd..6f3bdb862d 100644 --- a/sapi/cli/ps_title.c +++ b/sapi/cli/ps_title.c @@ -112,6 +112,7 @@ static const size_t ps_buffer_size = MAX_PATH; #elif defined(PS_USE_CLOBBER_ARGV) static char *ps_buffer; /* will point to argv area */ static size_t ps_buffer_size; /* space determined at run time */ +static char *empty_environ[] = {0}; /* empty environment */ #else #define PS_BUFFER_SIZE 256 static char ps_buffer[PS_BUFFER_SIZE]; @@ -415,6 +416,9 @@ void cleanup_ps_args(char **argv) free(frozen_environ[i]); free(frozen_environ); free(new_environ); + /* leave a sane environment behind since some atexit() handlers + call getenv(). */ + environ = empty_environ; } #endif /* PS_USE_CLOBBER_ARGV */