]> granicus.if.org Git - php/commitdiff
Fixed bug #60321 (ob_get_status(true) no longer returns an array when buffer is empty).
authorPierrick Charron <pierrick@php.net>
Fri, 18 Nov 2011 00:16:58 +0000 (00:16 +0000)
committerPierrick Charron <pierrick@php.net>
Fri, 18 Nov 2011 00:16:58 +0000 (00:16 +0000)
main/output.c
tests/output/bug60321.phpt [new file with mode: 0644]

index 6a8f79a727413bfa283c4ffa4cdeea4aee2ebc0e..2ee34f59a423710db9272328b518ba60c366f6d3 100644 (file)
@@ -1438,13 +1438,13 @@ PHP_FUNCTION(ob_get_status)
        if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|b", &full_status) == FAILURE) {
                return;
        }
+       
+       array_init(return_value);
 
        if (!OG(active)) {
-               RETURN_FALSE;
+               return;
        }
 
-       array_init(return_value);
-
        if (full_status) {
                zend_stack_apply_with_argument(&OG(handlers), ZEND_STACK_APPLY_BOTTOMUP, php_output_stack_apply_status, return_value);
        } else {
diff --git a/tests/output/bug60321.phpt b/tests/output/bug60321.phpt
new file mode 100644 (file)
index 0000000..9802a57
--- /dev/null
@@ -0,0 +1,9 @@
+--TEST--
+Bug #60321 (ob_get_status(true) no longer returns an array when buffer is empty)
+--FILE--
+<?php
+$return = ob_get_status(true);                                                  
+var_dump($return);
+--EXPECT--
+array(0) {
+}