summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndi Gutmans <andi@php.net>2001-04-30 22:47:51 +0000
committerAndi Gutmans <andi@php.net>2001-04-30 22:47:51 +0000
commit6196e0bc4df513ef19f16d1078231d92dcf85523 (patch)
treee074b701f07a5e4a77a6eda2259655f1d89123a1
parentba5ae96cb49f9b1526e2c154ef885e39cbe3ac46 (diff)
downloadphp-git-6196e0bc4df513ef19f16d1078231d92dcf85523.tar.gz
- Fix for Bug id #10071
PR: Submitted by: Reviewed by: Obtained from:
-rw-r--r--sapi/cgi/cgi_main.c15
1 files changed, 11 insertions, 4 deletions
diff --git a/sapi/cgi/cgi_main.c b/sapi/cgi/cgi_main.c
index d509757432..fd8a666a39 100644
--- a/sapi/cgi/cgi_main.c
+++ b/sapi/cgi/cgi_main.c
@@ -89,14 +89,21 @@ static int _print_module_info ( zend_module_entry *module, void *arg ) {
static int sapi_cgibin_ub_write(const char *str, uint str_length)
{
+ const char *ptr = str;
+ uint remaining = str_length;
size_t ret;
- ret = fwrite(str, 1, str_length, stdout);
- if (ret != str_length) {
- php_handle_aborted_connection();
+ while (remaining > 0)
+ {
+ ret = fwrite(ptr, 1, MIN(remaining, 16384), stdout);
+ if (!ret) {
+ php_handle_aborted_connection();
+ }
+ ptr += ret;
+ remaining -= ret;
}
- return ret;
+ return str_length;
}