From: Fabian Keil Date: Thu, 8 Feb 2007 19:12:35 +0000 (+0000) Subject: Don't run server_content_length() the first time X-Git-Tag: v_3_0_7~340 X-Git-Url: http://www.privoxy.org/gitweb/@default-cgi@/faq/%22https:/@default-cgi@show-url-info?a=commitdiff_plain;h=b7cd5ce34c7261b5d5cd45aabfc192337010d702;p=privoxy.git Don't run server_content_length() the first time sed() parses server headers; only adjust the Content-Length header if the page was modified. --- diff --git a/parsers.c b/parsers.c index 317eee43..58569863 100644 --- a/parsers.c +++ b/parsers.c @@ -1,4 +1,4 @@ -const char parsers_rcs[] = "$Id: parsers.c,v 1.88 2007/02/07 11:27:12 fabiankeil Exp $"; +const char parsers_rcs[] = "$Id: parsers.c,v 1.89 2007/02/07 16:52:11 fabiankeil Exp $"; /********************************************************************* * * File : $Source: /cvsroot/ijbswa/current/parsers.c,v $ @@ -45,6 +45,10 @@ const char parsers_rcs[] = "$Id: parsers.c,v 1.88 2007/02/07 11:27:12 fabiankeil * * Revisions : * $Log: parsers.c,v $ + * Revision 1.89 2007/02/07 16:52:11 fabiankeil + * Fix log messages regarding the cookie time format + * (cookie and request URL were mixed up). + * * Revision 1.88 2007/02/07 11:27:12 fabiankeil * - Let decompress_iob() * - not corrupt the content if decompression fails @@ -688,7 +692,6 @@ const struct parsers server_patterns[] = { { "set-cookie:", 11, server_set_cookie }, { "connection:", 11, crumble }, { "Content-Type:", 13, server_content_type }, - { "Content-Length:", 15, server_content_length }, { "Content-MD5:", 12, server_content_md5 }, { "Content-Encoding:", 17, server_content_encoding }, { "Transfer-Encoding:", 18, server_transfer_coding }, @@ -1923,12 +1926,10 @@ jb_err server_content_encoding(struct client_state *csp, char **header) jb_err server_content_length(struct client_state *csp, char **header) { const size_t max_header_length = 80; - if (csp->content_length != 0) /* Content length could have been modified */ + + /* Regenerate header if the content was modified. */ + if (csp->flags & CSP_FLAG_MODIFIED) { - /* - * XXX: Shouldn't we check if csp->content_length - * is different than the original value? - */ freez(*header); *header = (char *) zalloc(max_header_length); if (*header == NULL)