You should aware of sending buffered contents chunk by
chunk is also problematic. i.e. ob_flush() and user specified
chunk size.
I guess you are going to fix(drop) ob_flush() along with
other ob features ;)
It does not make much sense not to have implicit/explict PHP
buffer flushing, but I don't care much as I said before ;)
--
Yasuo Ohgaki
Zeev Suraski wrote:
> zeev Sun Oct 6 08:02:54 2002 EDT
>
> Modified files:
> /php4/ext/standard basic_functions.c var.c
> /php4/main output.c
> Log:
> Revert the implicit_flush mess.
>
> Do not revert it again under any circumstances!
>
> Yasuo/anybody else - if there are issues with implicit_flush, please inform
> me and I will fix them.
>
>
> Index: php4/ext/standard/basic_functions.c
> diff -u php4/ext/standard/basic_functions.c:1.524
>php4/ext/standard/basic_functions.c:1.525
> --- php4/ext/standard/basic_functions.c:1.524 Sun Oct 6 05:06:24 2002
> +++ php4/ext/standard/basic_functions.c Sun Oct 6 08:02:52 2002
> @@ -17,7 +17,7 @@
> +----------------------------------------------------------------------+
> */
>
> -/* $Id: basic_functions.c,v 1.524 2002/10/06 09:06:24 zeev Exp $ */
> +/* $Id: basic_functions.c,v 1.525 2002/10/06 12:02:52 zeev Exp $ */
>
> #include "php.h"
> #include "php_streams.h"
> @@ -2076,7 +2076,6 @@
> convert_to_string(expr);
>
> if (i) {
> - php_output_set_status(0 TSRMLS_CC);
> php_start_ob_buffer (NULL, 0, 1 TSRMLS_CC);
> }
>
> @@ -2093,7 +2092,6 @@
> if (i) {
> php_ob_get_buffer (return_value TSRMLS_CC);
> php_end_ob_buffer (0, 0 TSRMLS_CC);
> - php_output_set_status(1 TSRMLS_CC);
> } else {
> RETURN_TRUE;
> }
> Index: php4/ext/standard/var.c
> diff -u php4/ext/standard/var.c:1.148 php4/ext/standard/var.c:1.149
> --- php4/ext/standard/var.c:1.148 Thu Oct 3 09:32:00 2002
> +++ php4/ext/standard/var.c Sun Oct 6 08:02:52 2002
> @@ -349,7 +349,6 @@
> }
>
> if (return_output) {
> - php_output_set_status(0 TSRMLS_CC);
> php_start_ob_buffer (NULL, 0, 1 TSRMLS_CC);
> }
>
> @@ -358,7 +357,6 @@
> if (return_output) {
> php_ob_get_buffer (return_value TSRMLS_CC);
> php_end_ob_buffer (0, 0 TSRMLS_CC);
> - php_output_set_status(1 TSRMLS_CC);
> }
> }
> /* }}} */
> Index: php4/main/output.c
> diff -u php4/main/output.c:1.140 php4/main/output.c:1.141
> --- php4/main/output.c:1.140 Sun Oct 6 05:06:24 2002
> +++ php4/main/output.c Sun Oct 6 08:02:53 2002
> @@ -18,7 +18,7 @@
> +----------------------------------------------------------------------+
> */
>
> -/* $Id: output.c,v 1.140 2002/10/06 09:06:24 zeev Exp $ */
> +/* $Id: output.c,v 1.141 2002/10/06 12:02:53 zeev Exp $ */
>
> #include "php.h"
> #include "ext/standard/head.h"
> @@ -94,10 +94,7 @@
>
>
> /* {{{ php_output_set_status
> - Toggle output status. Use this function for internal functions uses
> - buffers. If you don't implict flush (both php.ini implicit_flush and
>ob_impilict_flush())
> - may flush your php_printf() output.
> - status: 0 for disable output, 1 for enable.*/
> + Toggle output status. Do NOT use in application code, only in SAPIs where
>appropriate. */
> PHPAPI void php_output_set_status(zend_bool status TSRMLS_DC)
> {
> OG(disable_output) = !status;
> @@ -592,9 +589,8 @@
> target[text_length]=0;
>
> /* If implicit_flush is On or chunked buffering, send contents to next buffer
>and return. */
> - if (OG(implicit_flush) || (OG(active_ob_buffer).chunk_size
> - && OG(active_ob_buffer).text_length >=
>OG(active_ob_buffer).chunk_size))
> - {
> + if (OG(active_ob_buffer).chunk_size
> + && OG(active_ob_buffer).text_length >=
>OG(active_ob_buffer).chunk_size) {
> zval *output_handler = OG(active_ob_buffer).output_handler;
>
> if (output_handler) {
>
>
--
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, visit: http://www.php.net/unsub.php