summaryrefslogtreecommitdiff
path: root/sapi/apache2filter/sapi_apache2.c
diff options
context:
space:
mode:
authorIlia Alshanetsky <iliaa@php.net>2004-02-09 23:27:43 +0000
committerIlia Alshanetsky <iliaa@php.net>2004-02-09 23:27:43 +0000
commit67dd730546618dd99ebd48ebf2f10da493a90756 (patch)
treed78cf68475a04255668ad32132fe22783da70d3f /sapi/apache2filter/sapi_apache2.c
parent1b6b63c3f954bfbc296a982bad14cd47dc1261ab (diff)
downloadphp-git-67dd730546618dd99ebd48ebf2f10da493a90756.tar.gz
Fixed bug #27196 (Missing content_length initialization in apache 2 sapis).
Diffstat (limited to 'sapi/apache2filter/sapi_apache2.c')
-rw-r--r--sapi/apache2filter/sapi_apache2.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sapi/apache2filter/sapi_apache2.c b/sapi/apache2filter/sapi_apache2.c
index 570d012328..22df068626 100644
--- a/sapi/apache2filter/sapi_apache2.c
+++ b/sapi/apache2filter/sapi_apache2.c
@@ -376,6 +376,7 @@ static int php_input_filter(ap_filter_t *f, apr_bucket_brigade *bb,
static void php_apache_request_ctor(ap_filter_t *f, php_struct *ctx TSRMLS_DC)
{
char *content_type;
+ char *content_length;
const char *auth;
PG(during_request_startup) = 0;
@@ -394,6 +395,10 @@ static void php_apache_request_ctor(ap_filter_t *f, php_struct *ctx TSRMLS_DC)
SG(request_info).post_data_length = ctx->post_len;
efree(content_type);
+
+ content_length = (char *) apr_table_get(f->r->headers_in, "Content-Length");
+ SG(request_info).content_length = (content_length ? atoi(content_length) : 0);
+
apr_table_unset(f->r->headers_out, "Content-Length");
apr_table_unset(f->r->headers_out, "Last-Modified");
apr_table_unset(f->r->headers_out, "Expires");