mirror of
https://github.com/apache/httpd.git
synced 2025-08-20 16:09:55 +00:00
APACHE_XLATE, when doing translation that isn't single-byte-only
We must zap the Content-length header (if any). Otherwise, the browser will be seriously confused :) The header is zapped in ap_set_keepalive() right before we look for Content-length, transfer encoding, HTTP level, etc. to decide, among other issues, whether or not to turn on chunked encoding. For HTTP 1.1, if we don't send Content-length, we need to use chunked encoding, so we have to zap the header before that decision. Interestingly, in Russian Apache the Content-length header is zapped after ap_set_keepalive() is called, so with HTTP 1.1 they break the content-length-or-chunked rule. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@85379 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
@ -103,6 +103,9 @@ API_EXPORT(ap_status_t) ap_set_content_xlate(request_rec *r, int output,
|
||||
|
||||
if (output) {
|
||||
r->rrx->to_net = xlate;
|
||||
if (xlate) {
|
||||
ap_xlate_get_sb(r->rrx->to_net, &r->rrx->to_net_sb);
|
||||
}
|
||||
rv = ap_bsetopt(r->connection->client, BO_WXLATE, &xlate);
|
||||
}
|
||||
else {
|
||||
|
Reference in New Issue
Block a user