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

Reply via email to