diff options
author | Ilia Alshanetsky <iliaa@php.net> | 2003-08-01 20:20:11 +0000 |
---|---|---|
committer | Ilia Alshanetsky <iliaa@php.net> | 2003-08-01 20:20:11 +0000 |
commit | 2b768e8bdc3bdc4036f440a98c0eca5b991d3e9d (patch) | |
tree | d2f4e66213f7645b9a9d13a9941a18837e2aebf0 | |
parent | 5c4de2664c16da98ee0818e5cf2240f8e2aff787 (diff) | |
download | php-git-2b768e8bdc3bdc4036f440a98c0eca5b991d3e9d.tar.gz |
Fixed bug #22072 (Apache2 sapis do not detect aborted connections).
-rw-r--r-- | sapi/apache2filter/sapi_apache2.c | 6 | ||||
-rw-r--r-- | sapi/apache2handler/sapi_apache2.c | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/sapi/apache2filter/sapi_apache2.c b/sapi/apache2filter/sapi_apache2.c index 176a0227f4..1295d1ceef 100644 --- a/sapi/apache2filter/sapi_apache2.c +++ b/sapi/apache2filter/sapi_apache2.c @@ -91,7 +91,7 @@ php_apache_sapi_ub_write(const char *str, uint str_length TSRMLS_DC) APR_BRIGADE_INSERT_TAIL(bb, b); #endif - if (ap_pass_brigade(f->next, bb) != APR_SUCCESS) { + if (ap_pass_brigade(f->next, bb) != APR_SUCCESS || ctx->r->connection->aborted) { php_handle_aborted_connection(); } @@ -253,7 +253,7 @@ php_apache_sapi_flush(void *server_context) bb = apr_brigade_create(ctx->r->pool, ba); b = apr_bucket_flush_create(ba); APR_BRIGADE_INSERT_TAIL(bb, b); - if (ap_pass_brigade(f->next, bb) != APR_SUCCESS) { + if (ap_pass_brigade(f->next, bb) != APR_SUCCESS || ctx->r->connection->aborted) { php_handle_aborted_connection(); } } @@ -477,7 +477,7 @@ static int php_output_filter(ap_filter_t *f, apr_bucket_brigade *bb) rv = ap_pass_brigade(f->next, prebb); /* XXX: destroy the prebb, since we know we're * done with it? */ - if (rv != APR_SUCCESS) { + if (rv != APR_SUCCESS || ctx->r->connection->aborted) { php_handle_aborted_connection(); } } diff --git a/sapi/apache2handler/sapi_apache2.c b/sapi/apache2handler/sapi_apache2.c index d496eaa946..8021064990 100644 --- a/sapi/apache2handler/sapi_apache2.c +++ b/sapi/apache2handler/sapi_apache2.c @@ -88,7 +88,7 @@ php_apache_sapi_ub_write(const char *str, uint str_length TSRMLS_DC) APR_BRIGADE_INSERT_TAIL(brigade, bucket); - if (ap_pass_brigade(r->output_filters, brigade) != APR_SUCCESS) { + if (ap_pass_brigade(r->output_filters, brigade) != APR_SUCCESS || r->connection->aborted) { php_handle_aborted_connection(); } /* Ensure this brigade is empty for the next usage. */ @@ -258,7 +258,7 @@ php_apache_sapi_flush(void *server_context) /* Send a flush bucket down the filter chain. */ bucket = apr_bucket_flush_create(r->connection->bucket_alloc); APR_BRIGADE_INSERT_TAIL(brigade, bucket); - if (ap_pass_brigade(r->output_filters, brigade) != APR_SUCCESS) { + if (ap_pass_brigade(r->output_filters, brigade) != APR_SUCCESS || r->connection->aborted) { php_handle_aborted_connection(); } apr_brigade_cleanup(brigade); @@ -545,7 +545,7 @@ static int php_handler(request_rec *r) APR_BRIGADE_INSERT_TAIL(brigade, bucket); rv = ap_pass_brigade(r->output_filters, brigade); - if (rv != APR_SUCCESS) { + if (rv != APR_SUCCESS || r->connection->aborted) { php_handle_aborted_connection(); } apr_brigade_cleanup(brigade); |