Compliance: Must forward multi-valued Cache-Controls
httpHdrCcParseInit() ignored all unknown Cache-Control directives
except for the first one because the (type != CC_OTHER) check
applied to the debugging statement only.
This patch avoids whitespace/formatting changes to highlight the
important differences. Format before commit.
Co-Advisor test case: test_case/rfc2616/endHdr-fwd-set-Cache-Control-toSrv
Compliance: Forward multiple unknown HTTP Cache-Control directives.
httpHdrCcParseInit() ignored all unknown Cache-Control directives
except for the first one because the (type != CC_OTHER) check
applied to the debugging statement only.
This patch avoids whitespace/formatting changes to highlight the
important differences. SourceFormat should be applied before commit.
Co-Advisor test case: test_case/rfc2616/endHdr-fwd-set-Cache-Control-toSrv
=== modified file 'src/HttpHdrCc.cc'
--- src/HttpHdrCc.cc 2009-04-07 13:51:57 +0000
+++ src/HttpHdrCc.cc 2010-07-30 15:16:06 +0000
@@ -139,16 +139,18 @@
}
if (EBIT_TEST(cc->mask, type)) {
- if (type != CC_OTHER)
+ if (type != CC_OTHER) {
debugs(65, 2, "hdr cc: ignoring duplicate cache-directive: near '" << item << "' in '" << str << "'");
CcFieldsInfo[type].stat.repCount++;
continue;
- }
+ }
+ } else {
/* update mask */
EBIT_SET(cc->mask, type);
+ }
/* post-processing special cases */
switch (type) {