Title: [201647] trunk/Source/WebCore
Revision
201647
Author
beid...@apple.com
Date
2016-06-03 10:09:42 -0700 (Fri, 03 Jun 2016)

Log Message

ResourceResponseBase cleanup.
https://bugs.webkit.org/show_bug.cgi?id=158348

Reviewed by Chris Dumez.

No new tests (Refactor, no behavior change).

CrossThreadData can be noncopyable and WTFMove()'ed around, instead of
being in a unique_ptr.

* platform/network/ResourceResponseBase.cpp:
(WebCore::ResourceResponseBase::crossThreadData):
(WebCore::ResourceResponseBase::fromCrossThreadData):
* platform/network/ResourceResponseBase.h:

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (201646 => 201647)


--- trunk/Source/WebCore/ChangeLog	2016-06-03 16:49:46 UTC (rev 201646)
+++ trunk/Source/WebCore/ChangeLog	2016-06-03 17:09:42 UTC (rev 201647)
@@ -1,3 +1,20 @@
+2016-06-03  Brady Eidson  <beid...@apple.com>
+
+        ResourceResponseBase cleanup.
+        https://bugs.webkit.org/show_bug.cgi?id=158348
+
+        Reviewed by Chris Dumez.
+
+        No new tests (Refactor, no behavior change).
+
+        CrossThreadData can be noncopyable and WTFMove()'ed around, instead of 
+        being in a unique_ptr.
+        
+        * platform/network/ResourceResponseBase.cpp:
+        (WebCore::ResourceResponseBase::crossThreadData):
+        (WebCore::ResourceResponseBase::fromCrossThreadData):
+        * platform/network/ResourceResponseBase.h:
+
 2016-06-03  Antoine Quint  <grao...@apple.com>
 
         REGRESSION: WebGL doesn't show up in CSS reflections

Modified: trunk/Source/WebCore/platform/network/ResourceResponseBase.cpp (201646 => 201647)


--- trunk/Source/WebCore/platform/network/ResourceResponseBase.cpp	2016-06-03 16:49:46 UTC (rev 201646)
+++ trunk/Source/WebCore/platform/network/ResourceResponseBase.cpp	2016-06-03 17:09:42 UTC (rev 201647)
@@ -63,42 +63,42 @@
 {
 }
 
-std::unique_ptr<ResourceResponseBase::CrossThreadData> ResourceResponseBase::crossThreadData() const
+ResourceResponseBase::CrossThreadData ResourceResponseBase::crossThreadData() const
 {
-    auto data = ""
+    CrossThreadData data;
 
-    data->url = ""
-    data->mimeType = mimeType().isolatedCopy();
-    data->expectedContentLength = expectedContentLength();
-    data->textEncodingName = textEncodingName().isolatedCopy();
+    data.url = ""
+    data.mimeType = mimeType().isolatedCopy();
+    data.expectedContentLength = expectedContentLength();
+    data.textEncodingName = textEncodingName().isolatedCopy();
 
-    data->httpStatusCode = httpStatusCode();
-    data->httpStatusText = httpStatusText().isolatedCopy();
-    data->httpVersion = httpVersion().isolatedCopy();
+    data.httpStatusCode = httpStatusCode();
+    data.httpStatusText = httpStatusText().isolatedCopy();
+    data.httpVersion = httpVersion().isolatedCopy();
 
-    data->httpHeaderFields = httpHeaderFields().isolatedCopy();
-    data->resourceLoadTiming = m_resourceLoadTiming.isolatedCopy();
-    data->type = m_type;
+    data.httpHeaderFields = httpHeaderFields().isolatedCopy();
+    data.resourceLoadTiming = m_resourceLoadTiming.isolatedCopy();
+    data.type = m_type;
 
     return data;
 }
 
-ResourceResponse ResourceResponseBase::fromCrossThreadData(std::unique_ptr<CrossThreadData>&& data)
+ResourceResponse ResourceResponseBase::fromCrossThreadData(CrossThreadData&& data)
 {
     ResourceResponse response;
 
-    response.setURL(data->url);
-    response.setMimeType(data->mimeType);
-    response.setExpectedContentLength(data->expectedContentLength);
-    response.setTextEncodingName(data->textEncodingName);
+    response.setURL(data.url);
+    response.setMimeType(data.mimeType);
+    response.setExpectedContentLength(data.expectedContentLength);
+    response.setTextEncodingName(data.textEncodingName);
 
-    response.setHTTPStatusCode(data->httpStatusCode);
-    response.setHTTPStatusText(data->httpStatusText);
-    response.setHTTPVersion(data->httpVersion);
+    response.setHTTPStatusCode(data.httpStatusCode);
+    response.setHTTPStatusText(data.httpStatusText);
+    response.setHTTPVersion(data.httpVersion);
 
-    response.m_httpHeaderFields = WTFMove(data->httpHeaderFields);
-    response.m_resourceLoadTiming = data->resourceLoadTiming;
-    response.m_type = data->type;
+    response.m_httpHeaderFields = WTFMove(data.httpHeaderFields);
+    response.m_resourceLoadTiming = data.resourceLoadTiming;
+    response.m_type = data.type;
 
     return response;
 }

Modified: trunk/Source/WebCore/platform/network/ResourceResponseBase.h (201646 => 201647)


--- trunk/Source/WebCore/platform/network/ResourceResponseBase.h	2016-06-03 16:49:46 UTC (rev 201646)
+++ trunk/Source/WebCore/platform/network/ResourceResponseBase.h	2016-06-03 17:09:42 UTC (rev 201647)
@@ -48,6 +48,11 @@
     enum class Type;
 
     struct CrossThreadData {
+        CrossThreadData(const CrossThreadData&) = delete;
+        CrossThreadData& operator=(const CrossThreadData&) = delete;
+        CrossThreadData() = default;
+        CrossThreadData(CrossThreadData&&) = default;
+
         URL url;
         String mimeType;
         long long expectedContentLength;
@@ -60,8 +65,8 @@
         Type type;
     };
 
-    std::unique_ptr<CrossThreadData> crossThreadData() const;
-    static ResourceResponse fromCrossThreadData(std::unique_ptr<CrossThreadData>&&);
+    CrossThreadData crossThreadData() const;
+    static ResourceResponse fromCrossThreadData(CrossThreadData&&);
 
     bool isNull() const { return m_isNull; }
     WEBCORE_EXPORT bool isHTTP() const;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to