]> granicus.if.org Git - php/commitdiff
MFH - Fixed bug #31519: Set r->status_line to SAPI-provided status-line.
authorJoe Orton <jorton@php.net>
Mon, 17 Jan 2005 12:36:44 +0000 (12:36 +0000)
committerJoe Orton <jorton@php.net>
Mon, 17 Jan 2005 12:36:44 +0000 (12:36 +0000)
sapi/apache2handler/sapi_apache2.c

index cc4390bf1272bf55ec3c3283a203096a5a829c41..b530d8c222d66c2d8c42fb9e7097c05ce7e6b938 100644 (file)
@@ -119,9 +119,17 @@ static int
 php_apache_sapi_send_headers(sapi_headers_struct *sapi_headers TSRMLS_DC)
 {
        php_struct *ctx = SG(server_context);
+       const char *sline = SG(sapi_headers).http_status_line;
 
        ctx->r->status = SG(sapi_headers).http_response_code;
 
+       /* httpd requires that r->status_line is set to the first digit of
+        * the status-code: */
+       if (sline && strlen(sline) > 12 && strncmp(sline, "HTTP/1.", 7) == 0 
+               && sline[8] == ' ') {
+               ctx->r->status_line = apr_pstrdup(ctx->r->pool, sline + 9);
+       }
+
        return SAPI_HEADER_SENT_SUCCESSFULLY;
 }