Title: [88043] releases/WebKitGTK/webkit-1.4

Diff

Modified: releases/WebKitGTK/webkit-1.4/LayoutTests/ChangeLog (88042 => 88043)


--- releases/WebKitGTK/webkit-1.4/LayoutTests/ChangeLog	2011-06-03 20:22:09 UTC (rev 88042)
+++ releases/WebKitGTK/webkit-1.4/LayoutTests/ChangeLog	2011-06-03 20:28:11 UTC (rev 88043)
@@ -1,3 +1,14 @@
+2011-04-28  Arno Renevier  <[email protected]>
+
+        Reviewed by Gustavo Noronha Silva.
+
+        [Soup] does not load css stylesheets without content-type
+        https://bugs.webkit.org/show_bug.cgi?id=59697
+
+        * platform/gtk/Skipped: Enable now passing tests:
+         - http/tests/mime/standard-mode-loads-stylesheet-with-empty-content-type.html
+         - http/tests/mime/standard-mode-loads-stylesheet-with-text-css-and-invalid-type.html
+
 2011-05-12  Adam Barth  <[email protected]>
 
         Reviewed by Darin Adler.

Modified: releases/WebKitGTK/webkit-1.4/LayoutTests/platform/gtk/Skipped (88042 => 88043)


--- releases/WebKitGTK/webkit-1.4/LayoutTests/platform/gtk/Skipped	2011-06-03 20:22:09 UTC (rev 88042)
+++ releases/WebKitGTK/webkit-1.4/LayoutTests/platform/gtk/Skipped	2011-06-03 20:28:11 UTC (rev 88043)
@@ -505,8 +505,6 @@
 http/tests/media/video-play-stall-seek.html
 http/tests/media/video-play-stall.html
 http/tests/media/video-seekable-stall.html
-http/tests/mime/standard-mode-loads-stylesheet-with-empty-content-type.html
-http/tests/mime/standard-mode-loads-stylesheet-with-text-css-and-invalid-type.html
 http/tests/misc/acid3.html
 http/tests/misc/policy-delegate-called-twice.html
 http/tests/misc/prefetch-purpose.html
@@ -1341,3 +1339,7 @@
 
 # https://bugs.webkit.org/show_bug.cgi?id=56599
 editing/deleting/5206311-1.html
+
+# Unskip when https://bugs.webkit.org/show_bug.cgi?id=59571 is fixed
+fast/dom/shadow/no-renderers-for-light-children.html+fast/dom/shadow/no-renderers-for-light-children.html
+

Modified: releases/WebKitGTK/webkit-1.4/Source/WebCore/ChangeLog (88042 => 88043)


--- releases/WebKitGTK/webkit-1.4/Source/WebCore/ChangeLog	2011-06-03 20:22:09 UTC (rev 88042)
+++ releases/WebKitGTK/webkit-1.4/Source/WebCore/ChangeLog	2011-06-03 20:28:11 UTC (rev 88043)
@@ -1,3 +1,22 @@
+2011-04-28  Arno Renevier  <[email protected]>
+
+        Reviewed by Gustavo Noronha Silva.
+
+        [Soup] does not load css stylesheets without content-type
+        https://bugs.webkit.org/show_bug.cgi?id=59697
+
+        When sniffing content type, do not replace http Content-Type header in
+        soup message anymore, but keep sniffed content type in a separate
+        variable.
+
+        * platform/network/soup/ResourceHandleSoup.cpp:
+        (WebCore::contentSniffedCallback):
+        * platform/network/soup/ResourceResponse.h:
+        (WebCore::ResourceResponse::sniffedContentType):
+        (WebCore::ResourceResponse::setSniffedContentType):
+        * platform/network/soup/ResourceResponseSoup.cpp:
+        (WebCore::ResourceResponse::updateFromSoupMessage):
+
 2011-05-26  Igor Oliveira  <[email protected]>
 
         Reviewed by Andreas Kling.

Modified: releases/WebKitGTK/webkit-1.4/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp (88042 => 88043)


--- releases/WebKitGTK/webkit-1.4/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp	2011-06-03 20:22:09 UTC (rev 88042)
+++ releases/WebKitGTK/webkit-1.4/Source/WebCore/platform/network/soup/ResourceHandleSoup.cpp	2011-06-03 20:28:11 UTC (rev 88043)
@@ -321,13 +321,7 @@
 // This callback will not be called if the content sniffer is disabled in startHTTPRequest.
 static void contentSniffedCallback(SoupMessage* msg, const char* sniffedType, GHashTable *params, gpointer data)
 {
-    if (sniffedType) {
-        const char* officialType = soup_message_headers_get_one(msg->response_headers, "Content-Type");
 
-        if (!officialType || strcmp(officialType, sniffedType))
-            soup_message_headers_set_content_type(msg->response_headers, sniffedType, params);
-    }
-
     if (statusWillBeHandledBySoup(msg->status_code))
         return;
 
@@ -343,6 +337,24 @@
 
     ASSERT(d->m_response.isNull());
 
+    if (sniffedType) {
+        const char* officialType = soup_message_headers_get_one(msg->response_headers, "Content-Type");
+        if (!officialType || strcmp(officialType, sniffedType)) {
+            GString* str = g_string_new(sniffedType);
+            if (params) {
+                GHashTableIter iter;
+                gpointer key, value;
+                g_hash_table_iter_init(&iter, params);
+                while (g_hash_table_iter_next(&iter, &key, &value)) {
+                    g_string_append(str, "; ");
+                    soup_header_g_string_append_param(str, static_cast<const char*>(key), static_cast<const char*>(value));
+                }
+            }
+            d->m_response.setSniffedContentType(str->str);
+            g_string_free(str, TRUE);
+        }
+    }
+
     fillResponseFromMessage(msg, &d->m_response);
     client->didReceiveResponse(handle.get(), d->m_response);
 }

Modified: releases/WebKitGTK/webkit-1.4/Source/WebCore/platform/network/soup/ResourceResponse.h (88042 => 88043)


--- releases/WebKitGTK/webkit-1.4/Source/WebCore/platform/network/soup/ResourceResponse.h	2011-06-03 20:22:09 UTC (rev 88042)
+++ releases/WebKitGTK/webkit-1.4/Source/WebCore/platform/network/soup/ResourceResponse.h	2011-06-03 20:28:11 UTC (rev 88043)
@@ -58,10 +58,14 @@
     SoupMessageFlags soupMessageFlags() const { return m_soupFlags; }
     void setSoupMessageFlags(SoupMessageFlags soupFlags) { m_soupFlags = soupFlags; }
 
+    const String& sniffedContentType() const { return m_sniffedContentType; }
+    void setSniffedContentType(const String& value) { m_sniffedContentType = value; }
+
 private:
     friend class ResourceResponseBase;
 
     SoupMessageFlags m_soupFlags;
+    String m_sniffedContentType;
 
     void doUpdateResourceResponse() { }
 

Modified: releases/WebKitGTK/webkit-1.4/Source/WebCore/platform/network/soup/ResourceResponseSoup.cpp (88042 => 88043)


--- releases/WebKitGTK/webkit-1.4/Source/WebCore/platform/network/soup/ResourceResponseSoup.cpp	2011-06-03 20:22:09 UTC (rev 88042)
+++ releases/WebKitGTK/webkit-1.4/Source/WebCore/platform/network/soup/ResourceResponseSoup.cpp	2011-06-03 20:28:11 UTC (rev 88043)
@@ -71,7 +71,11 @@
 
     m_soupFlags = soup_message_get_flags(soupMessage);
 
-    String contentType = soup_message_headers_get_one(soupMessage->response_headers, "Content-Type");
+    String contentType;
+    if (sniffedContentType().isEmpty())
+        contentType = soup_message_headers_get_one(soupMessage->response_headers, "Content-Type");
+    else
+        contentType = this->sniffedContentType();
     setMimeType(extractMIMETypeFromMediaType(contentType));
 
     setTextEncodingName(extractCharsetFromMediaType(contentType));
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to