summaryrefslogtreecommitdiff
path: root/main/output.c
diff options
context:
space:
mode:
authorYasuo Ohgaki <yohgaki@php.net>2002-10-01 02:43:33 +0000
committerYasuo Ohgaki <yohgaki@php.net>2002-10-01 02:43:33 +0000
commit3d8e33f06a7a01aa3699fa93fb1a3d98e20efca9 (patch)
tree2781dc6feb5585b8598b72167948da8bc82aacdc /main/output.c
parent8634346e737a62635aab8fe0d6fc48186306c8c7 (diff)
downloadphp-git-3d8e33f06a7a01aa3699fa93fb1a3d98e20efca9.tar.gz
Fixed implicit flush.
Diffstat (limited to 'main/output.c')
-rw-r--r--main/output.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/main/output.c b/main/output.c
index 1a6993be44..c0d5b793a0 100644
--- a/main/output.c
+++ b/main/output.c
@@ -593,6 +593,14 @@ static void php_ob_append(const char *text, uint text_length TSRMLS_DC)
memcpy(target, text, text_length);
target[text_length]=0;
+ /* If implicit_flush is On, send contents to next buffer and return.
+ Both PG() and OG() should be used since we should flush implicitly
+ always when implicit_flush is enabled in php.ini */
+ if (PG(implicit_flush) || OG(implicit_flush)) {
+ php_end_ob_buffer(1, 1 TSRMLS_CC);
+ return;
+ }
+
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;