From 1a71bf646e799851dacb2fbe1a439f21543ca590 Mon Sep 17 00:00:00 2001 From: Nuno Lopes Date: Sun, 7 Apr 2013 02:32:20 -0400 Subject: [PATCH] leave a sane environment behind (even if empty) when exiting some OS atexit() handlers call getenv() --- sapi/cli/ps_title.c | 4 ++++ 1 file changed, 4 insertions(+) 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 */ -- 2.40.0