[php-src] master: main: duplicate PG(output_handler) zstr

Gina Peter Banyard <[email protected]> Fri, 31 Jul 2026 09:33:24 +0000
Newsgroups gmane.comp.php.cvs.general
Message-ID <[email protected]>
Author: Gina Peter Banyard (Girgias)
Date: 2026-07-31T10:33:16+01:00

Commit: https://github.com/php/php-src/commit/deb6ef1db127ca9e1e475f96d08b06149a8dcaf9
Raw diff: https://github.com/php/php-src/commit/deb6ef1db127ca9e1e475f96d08b06149a8dcaf9.diff

main: duplicate PG(output_handler) zstr

As it may originated from persistent storage if it was defined in an INI file

Changed paths:
  M  main/main.c


Diff:

diff --git a/main/main.c b/main/main.c
index d0ffe1895e9c..753625643508 100644
--- a/main/main.c
+++ b/main/main.c
@@ -1884,7 +1884,7 @@ zend_result php_request_startup(void)
 		if (PG(output_handler)) {
 			zval oh;
 
-			ZVAL_STR_COPY(&oh, PG(output_handler));
+			ZVAL_STR(&oh, zend_string_dup(PG(output_handler), false));
 			php_output_start_user(&oh, 0, PHP_OUTPUT_HANDLER_STDFLAGS);
 			zval_ptr_dtor(&oh);
 		} else if (PG(output_buffering)) {