From e8bb162220ac17cb9b8cc229666356e88f081887 Mon Sep 17 00:00:00 2001 From: Ben Fuhrmannek Date: Sat, 7 Aug 2021 15:55:48 +0200 Subject: prevent STDERR debug output based on SP_NODEBUG environment variable --- src/snuffleupagus.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'src/snuffleupagus.c') diff --git a/src/snuffleupagus.c b/src/snuffleupagus.c index 2ee94a1..3ad47d5 100644 --- a/src/snuffleupagus.c +++ b/src/snuffleupagus.c @@ -75,7 +75,11 @@ ZEND_DLEXPORT zend_extension zend_extension_entry = { static PHP_GINIT_FUNCTION(snuffleupagus) { #ifdef SP_DEBUG_STDERR - sp_debug_stderr = dup(STDERR_FILENO); + if (getenv("SP_NODEBUG")) { + sp_debug_stderr = -1; + } else { + sp_debug_stderr = dup(STDERR_FILENO); + } #endif sp_log_debug("(GINIT)"); snuffleupagus_globals->is_config_valid = SP_CONFIG_NONE; @@ -218,8 +222,10 @@ static PHP_GSHUTDOWN_FUNCTION(snuffleupagus) { #undef FREE_CFG_ZSTR #ifdef SP_DEBUG_STDERR - close(sp_debug_stderr); - sp_debug_stderr = STDERR_FILENO; + if (sp_debug_stderr >= 0) { + close(sp_debug_stderr); + sp_debug_stderr = STDERR_FILENO; + } #endif } -- cgit v1.3