cvs: php-src(PHP_5_2) / NEWS /ext/standard basic_functions.c

From: Date: Mon, 25 Jun 2007 21:12:47 +0000
Subject: cvs: php-src(PHP_5_2) / NEWS /ext/standard basic_functions.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-44959@lists.php.net to get a copy of this message
tony2001 Mon Jun 25 21:12:47 2007 UTC Modified files: (Branch: PHP_5_2) /php-src NEWS /php-src/ext/standard basic_functions.c Log: fix #41773 (php_strip_whitespace sends headers with errors suppressed) MFB is not needed, output buffering in HEAD handles this situation correctly http://cvs.php.net/viewvc.cgi/php-src/NEWS?r1=1.2027.2.547.2.798&r2=1.2027.2.547.2.799&diff_format=u Index: php-src/NEWS diff -u php-src/NEWS:1.2027.2.547.2.798 php-src/NEWS:1.2027.2.547.2.799 --- php-src/NEWS:1.2027.2.547.2.798 Mon Jun 25 18:26:52 2007 +++ php-src/NEWS Mon Jun 25 21:12:47 2007 @@ -36,7 +36,9 @@ - Fixed PECL bug #11216 (crash in ZipArchive::addEmptyDir when a directory already exists). (Pierre) -- Fixed bug #41765 (Recode crashes/does not work on amd64) +- Fixed bug #41773 (php_strip_whitespace() sends headers with errors + suppressed). (Tony) +- Fixed bug #41765 (Recode crashes/does not work on amd64). (nexus at smoula dot net, Stas) - Fixed bug #41724 (libxml_get_last_error() - errors service request scope). (thekid at php dot net, Ilia) http://cvs.php.net/viewvc.cgi/php-src/ext/standard/basic_functions.c?r1=1.725.2.31.2.54&r2=1.725.2.31.2.55&diff_format=u Index: php-src/ext/standard/basic_functions.c diff -u php-src/ext/standard/basic_functions.c:1.725.2.31.2.54 php-src/ext/standard/basic_functions.c:1.725.2.31.2.55 --- php-src/ext/standard/basic_functions.c:1.725.2.31.2.54 Sat Jun 9 11:44:08 2007 +++ php-src/ext/standard/basic_functions.c Mon Jun 25 21:12:47 2007 @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: basic_functions.c,v 1.725.2.31.2.54 2007/06/09 11:44:08 sniper Exp $ */ +/* $Id: basic_functions.c,v 1.725.2.31.2.55 2007/06/25 21:12:47 tony2001 Exp $ */ #include "php.h" #include "php_streams.h" @@ -5455,7 +5455,18 @@ if (highlight_file(filename, &syntax_highlighter_ini TSRMLS_CC) == FAILURE) { if (i) { - php_end_ob_buffer (1, 0 TSRMLS_CC); + int res = php_ob_get_buffer(return_value TSRMLS_CC); + + /* flush the buffer only if there is something to flush */ + if (res == SUCCESS && Z_STRLEN_P(return_value) > 0) { + php_end_ob_buffer (1, 0 TSRMLS_CC); + zval_dtor(return_value); + } else { + php_end_ob_buffer (0, 0 TSRMLS_CC); + if (res == SUCCESS) { + zval_dtor(return_value); + } + } } RETURN_FALSE; } @@ -5482,8 +5493,6 @@ RETURN_FALSE; } - php_start_ob_buffer(NULL, 0, 1 TSRMLS_CC); - file_handle.type = ZEND_HANDLE_FILENAME; file_handle.filename = filename; file_handle.free_filename = 0; @@ -5491,10 +5500,11 @@ zend_save_lexical_state(&original_lex_state TSRMLS_CC); if (open_file_for_scanning(&file_handle TSRMLS_CC)==FAILURE) { zend_restore_lexical_state(&original_lex_state TSRMLS_CC); - php_end_ob_buffer(1, 0 TSRMLS_CC); RETURN_EMPTY_STRING(); } + php_start_ob_buffer(NULL, 0, 1 TSRMLS_CC); + zend_strip(TSRMLS_C); zend_destroy_file_handle(&file_handle TSRMLS_CC);

« previous php.cvs (#44959) next »