Title: [155204] branches/safari-537-branch/Source/WebCore
- Revision
- 155204
- Author
- [email protected]
- Date
- 2013-09-06 12:32:56 -0700 (Fri, 06 Sep 2013)
Log Message
Merged r155203. <rdar://problem/14929843>
Modified Paths
Diff
Modified: branches/safari-537-branch/Source/WebCore/ChangeLog (155203 => 155204)
--- branches/safari-537-branch/Source/WebCore/ChangeLog 2013-09-06 19:18:03 UTC (rev 155203)
+++ branches/safari-537-branch/Source/WebCore/ChangeLog 2013-09-06 19:32:56 UTC (rev 155204)
@@ -1,3 +1,34 @@
+2013-09-06 Lucas Forschler <[email protected]>
+
+ Merge r155203
+
+ 2013-09-06 Mike West <[email protected]>
+
+ Revalidation header blacklisting should be case-insensitive.
+ https://bugs.webkit.org/show_bug.cgi?id=120832
+
+ Reviewed by Alexey Proskuryakov.
+
+ Headers like 'content-type' should be ignored for 304 responses,
+ even if they are delivered as 'Content-Type', or 'CoNtEnT-TyPe', etc.
+
+ I broke this behavior in http://trac.webkit.org/changeset/142068
+ ("Entity-header extension headers honored on 304 responses"). Pages like
+ https://learndev.unm.edu/ currently break on reload, as they incorrectly
+ send 'Content-Type: text/plain' for 304 responses for resources like
+ CSS and _javascript_. The browser should drop these headers, but because
+ we're comparing in a case-sensitive fashion, we don't.
+
+ https://code.google.com/p/chromium/issues/detail?id=246875 documents the
+ Blink-side fix; this patch is a port of that patch.
+
+ Test: http/tests/cache/content-type-ignored-during-revalidation.html
+
+ * loader/cache/CachedResource.cpp:
+ (WebCore::shouldUpdateHeaderAfterRevalidation):
+ Compare the provided AtomicString 'header' to the revalidation
+ blacklists in a case-insensitive fashion.
+
2013-09-05 Lucas Forschler <[email protected]>
Merge r154037
Modified: branches/safari-537-branch/Source/WebCore/loader/cache/CachedResource.cpp (155203 => 155204)
--- branches/safari-537-branch/Source/WebCore/loader/cache/CachedResource.cpp 2013-09-06 19:18:03 UTC (rev 155203)
+++ branches/safari-537-branch/Source/WebCore/loader/cache/CachedResource.cpp 2013-09-06 19:32:56 UTC (rev 155204)
@@ -90,11 +90,11 @@
static inline bool shouldUpdateHeaderAfterRevalidation(const AtomicString& header)
{
for (size_t i = 0; i < WTF_ARRAY_LENGTH(headersToIgnoreAfterRevalidation); i++) {
- if (header == headersToIgnoreAfterRevalidation[i])
+ if (equalIgnoringCase(header, headersToIgnoreAfterRevalidation[i]))
return false;
}
for (size_t i = 0; i < WTF_ARRAY_LENGTH(headerPrefixesToIgnoreAfterRevalidation); i++) {
- if (header.startsWith(headerPrefixesToIgnoreAfterRevalidation[i]))
+ if (header.startsWith(headerPrefixesToIgnoreAfterRevalidation[i], false))
return false;
}
return true;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes