Title: [219948] trunk/Source/WebCore
Revision
219948
Author
[email protected]
Date
2017-07-26 08:29:29 -0700 (Wed, 26 Jul 2017)

Log Message

[Curl] Bug fix after r219606
https://bugs.webkit.org/show_bug.cgi?id=174845

Patch by Daewoong Jang <[email protected]> on 2017-07-26
Reviewed by Alex Christensen.

* platform/network/curl/CurlContext.h:
(WebCore::CurlSList::isEmpty):
* platform/network/curl/ResourceHandleCurl.cpp:
(WebCore::ResourceHandleInternal::didReceiveHeaderLine):
(WebCore::ResourceHandleInternal::headerCallback):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (219947 => 219948)


--- trunk/Source/WebCore/ChangeLog	2017-07-26 15:27:13 UTC (rev 219947)
+++ trunk/Source/WebCore/ChangeLog	2017-07-26 15:29:29 UTC (rev 219948)
@@ -1,3 +1,16 @@
+2017-07-26  Daewoong Jang  <[email protected]>
+
+        [Curl] Bug fix after r219606
+        https://bugs.webkit.org/show_bug.cgi?id=174845
+
+        Reviewed by Alex Christensen.
+
+        * platform/network/curl/CurlContext.h:
+        (WebCore::CurlSList::isEmpty):
+        * platform/network/curl/ResourceHandleCurl.cpp:
+        (WebCore::ResourceHandleInternal::didReceiveHeaderLine):
+        (WebCore::ResourceHandleInternal::headerCallback):
+
 2017-07-26  Zan Dobersek  <[email protected]>
 
         [EME][GStreamer] Multi-key support in the GStreamer ClearKey decryptor

Modified: trunk/Source/WebCore/platform/network/curl/CurlContext.h (219947 => 219948)


--- trunk/Source/WebCore/platform/network/curl/CurlContext.h	2017-07-26 15:27:13 UTC (rev 219947)
+++ trunk/Source/WebCore/platform/network/curl/CurlContext.h	2017-07-26 15:29:29 UTC (rev 219948)
@@ -179,7 +179,7 @@
     operator struct curl_slist** () { return &m_list; }
 
     const struct curl_slist* head() const { return m_list; }
-    bool isEmpty() const { return m_list; }
+    bool isEmpty() const { return !m_list; }
     void clear()
     {
         if (m_list) {

Modified: trunk/Source/WebCore/platform/network/curl/ResourceHandleCurl.cpp (219947 => 219948)


--- trunk/Source/WebCore/platform/network/curl/ResourceHandleCurl.cpp	2017-07-26 15:27:13 UTC (rev 219947)
+++ trunk/Source/WebCore/platform/network/curl/ResourceHandleCurl.cpp	2017-07-26 15:29:29 UTC (rev 219948)
@@ -704,6 +704,8 @@
 
 void ResourceHandleInternal::didReceiveHeaderLine(const String& header)
 {
+    ASSERT(isMainThread());
+
     auto splitPosition = header.find(":");
     if (splitPosition != notFound) {
         String key = header.left(splitPosition).stripWhiteSpace();
@@ -898,8 +900,12 @@
             if (!d->m_cancelled)
                 d->didReceiveAllHeaders(httpCode, contentLength);
         });
-    } else
-        d->didReceiveHeaderLine(header);
+    } else {
+        callOnMainThread([job = RefPtr<ResourceHandle>(job), d, header] {
+            if (!d->m_cancelled)
+                d->didReceiveHeaderLine(header);
+        });
+    }
 
     return totalSize;
 }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to