svn: /php/php-src/ branches/PHP_5_4/main/output.c branches/PHP_5_4/tests/output/bug60322.phpt trunk/main/output.c trunk/tests/output/bug60322.phpt
| From: | Stanislav Malyshev | Date: | Mon, 26 Dec 2011 05:01:46 +0000 |
| Subject: | svn: /php/php-src/ branches/PHP_5_4/main/output.c branches/PHP_5_4/tests/output/bug60322.phpt trunk/main/output.c trunk/tests/output/bug60322.phpt | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-67332@lists.php.net to get a copy of this message | ||
stas Mon, 26 Dec 2011 05:01:46 +0000
Revision: http://svn.php.net/viewvc?view=revision&revision=321404
Log:
fix bug #60322 (ob_get_clean() now raises an E_NOTICE if no buffers exist)
Bug: https://bugs.php.net/60322 (error getting bug
information)
Changed paths:
U php/php-src/branches/PHP_5_4/main/output.c
A php/php-src/branches/PHP_5_4/tests/output/bug60322.phpt
U php/php-src/trunk/main/output.c
A php/php-src/trunk/tests/output/bug60322.phpt
Modified: php/php-src/branches/PHP_5_4/main/output.c
===================================================================
--- php/php-src/branches/PHP_5_4/main/output.c 2011-12-26 04:56:06 UTC (rev 321403)
+++ php/php-src/branches/PHP_5_4/main/output.c 2011-12-26 05:01:46 UTC (rev 321404)
@@ -1360,6 +1360,10 @@
return;
}
+ if(!OG(active)) {
+ RETURN_FALSE;
+ }
+
if (php_output_get_contents(return_value TSRMLS_CC) == FAILURE) {
php_error_docref("ref.outcontrol" TSRMLS_CC, E_NOTICE, "failed to delete buffer.
No buffer to delete");
RETURN_FALSE;
Added: php/php-src/branches/PHP_5_4/tests/output/bug60322.phpt
===================================================================
--- php/php-src/branches/PHP_5_4/tests/output/bug60322.phpt (rev 0)
+++ php/php-src/branches/PHP_5_4/tests/output/bug60322.phpt 2011-12-26 05:01:46 UTC (rev 321404)
@@ -0,0 +1,8 @@
+--TEST--
+Bug #60322 (ob_get_clean() now raises an E_NOTICE if no buffers exist)
+--FILE--
+<?php
+while(ob_get_clean()) ;
+var_dump(ob_get_clean());
+--EXPECT--
+bool(false)
Modified: php/php-src/trunk/main/output.c
===================================================================
--- php/php-src/trunk/main/output.c 2011-12-26 04:56:06 UTC (rev 321403)
+++ php/php-src/trunk/main/output.c 2011-12-26 05:01:46 UTC (rev 321404)
@@ -1360,6 +1360,10 @@
return;
}
+ if(!OG(active)) {
+ RETURN_FALSE;
+ }
+
if (php_output_get_contents(return_value TSRMLS_CC) == FAILURE) {
php_error_docref("ref.outcontrol" TSRMLS_CC, E_NOTICE, "failed to delete buffer.
No buffer to delete");
RETURN_FALSE;
Added: php/php-src/trunk/tests/output/bug60322.phpt
===================================================================
--- php/php-src/trunk/tests/output/bug60322.phpt (rev 0)
+++ php/php-src/trunk/tests/output/bug60322.phpt 2011-12-26 05:01:46 UTC (rev 321404)
@@ -0,0 +1,8 @@
+--TEST--
+Bug #60322 (ob_get_clean() now raises an E_NOTICE if no buffers exist)
+--FILE--
+<?php
+while(ob_get_clean()) ;
+var_dump(ob_get_clean());
+--EXPECT--
+bool(false)