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) {

Reply via email to