summaryrefslogtreecommitdiff
path: root/sapi/cgi
diff options
context:
space:
mode:
authorXinchen Hui <laruence@php.net>2015-01-27 22:13:04 +0800
committerXinchen Hui <laruence@php.net>2015-01-27 22:13:04 +0800
commit6336fa18c42c0af2787688c0fec5df7dde3da0a9 (patch)
tree1003b06f1ba0d3404d205ef9f3f810eb24474f3f /sapi/cgi
parent666cb333f725794892df7876889472aeee8e33fe (diff)
parent8c2d91761aaa3b7b25c70df4d2320f85e9322e79 (diff)
downloadphp-git-6336fa18c42c0af2787688c0fec5df7dde3da0a9.tar.gz
Merge branch 'PHP-5.5' into PHP-5.6
Diffstat (limited to 'sapi/cgi')
-rw-r--r--sapi/cgi/cgi_main.c7
-rw-r--r--sapi/cgi/fastcgi.c1
2 files changed, 6 insertions, 2 deletions
diff --git a/sapi/cgi/cgi_main.c b/sapi/cgi/cgi_main.c
index 0d7ca212a4..de1be31c41 100644
--- a/sapi/cgi/cgi_main.c
+++ b/sapi/cgi/cgi_main.c
@@ -733,13 +733,16 @@ static void sapi_cgi_log_message(char *message TSRMLS_DC)
request = (fcgi_request*) SG(server_context);
if (request) {
- int len = strlen(message);
+ int ret, len = strlen(message);
char *buf = malloc(len+2);
memcpy(buf, message, len);
memcpy(buf + len, "\n", sizeof("\n"));
- fcgi_write(request, FCGI_STDERR, buf, len+1);
+ ret = fcgi_write(request, FCGI_STDERR, buf, len + 1);
free(buf);
+ if (ret < 0) {
+ php_handle_aborted_connection();
+ }
} else {
fprintf(stderr, "%s\n", message);
}
diff --git a/sapi/cgi/fastcgi.c b/sapi/cgi/fastcgi.c
index 6a7e3a2e54..5e9e4c89c4 100644
--- a/sapi/cgi/fastcgi.c
+++ b/sapi/cgi/fastcgi.c
@@ -1321,6 +1321,7 @@ int fcgi_flush(fcgi_request *req, int close)
if (safe_write(req, req->out_buf, len) != len) {
req->keep = 0;
+ req->out_pos = req->out_buf;
return 0;
}