johannes Sat Mar 3 10:27:04 2007 UTC
Modified files:
/php-src/main output.c
/php-src/tests/output ob_020.phpt
Log:
- Fix old behaviour, ob_list_handlers() should always return an array
http://cvs.php.net/viewvc.cgi/php-src/main/output.c?r1=1.205&r2=1.206&diff_format=u
Index: php-src/main/output.c
diff -u php-src/main/output.c:1.205 php-src/main/output.c:1.206
--- php-src/main/output.c:1.205 Mon Jan 29 13:04:57 2007
+++ php-src/main/output.c Sat Mar 3 10:27:04 2007
@@ -19,7 +19,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: output.c,v 1.205 2007/01/29 13:04:57 mike Exp $ */
+/* $Id: output.c,v 1.206 2007/03/03 10:27:04 johannes Exp $ */
#ifndef PHP_OUTPUT_DEBUG
# define PHP_OUTPUT_DEBUG 0
@@ -1504,11 +1504,13 @@
if (ZEND_NUM_ARGS()) {
ZEND_WRONG_PARAM_COUNT();
}
+
+ array_init(return_value);
+
if (!OG(active)) {
- RETURN_FALSE;
+ return;
}
- array_init(return_value);
zend_stack_apply_with_argument(OG(handlers), ZEND_STACK_APPLY_BOTTOMUP,
php_output_stack_apply_list, return_value);
}
/* }}} */
http://cvs.php.net/viewvc.cgi/php-src/tests/output/ob_020.phpt?r1=1.3&r2=1.4&diff_format=u
Index: php-src/tests/output/ob_020.phpt
diff -u /dev/null php-src/tests/output/ob_020.phpt:1.4
--- /dev/null Sat Mar 3 10:27:04 2007
+++ php-src/tests/output/ob_020.phpt Sat Mar 3 10:27:04 2007
@@ -0,0 +1,38 @@
+--TEST--
+output buffering - ob_list_handlers
+--FILE--
+<?php
+print_r(ob_list_handlers());
+
+ob_start();
+print_r(ob_list_handlers());
+
+ob_start();
+print_r(ob_list_handlers());
+
+ob_end_flush();
+print_r(ob_list_handlers());
+
+ob_end_flush();
+print_r(ob_list_handlers());
+?>
+--EXPECT--
+Array
+(
+)
+Array
+(
+ [0] => default output handler
+)
+Array
+(
+ [0] => default output handler
+ [1] => default output handler
+)
+Array
+(
+ [0] => default output handler
+)
+Array
+(
+)
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php