Title: [192062] trunk/Source/WebKit2
Revision
192062
Author
[email protected]
Date
2015-11-05 11:25:29 -0800 (Thu, 05 Nov 2015)

Log Message

[WK2] Clean up / Modernize NetworkResourceLoader
https://bugs.webkit.org/show_bug.cgi?id=150922

Reviewed by Andreas Kling.

Clean up / Modernize NetworkResourceLoader.

* NetworkProcess/FileAPI/NetworkBlobRegistry.cpp:
(WebKit::NetworkBlobRegistry::filesInBlob):
* NetworkProcess/FileAPI/NetworkBlobRegistry.h:
* NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::scheduleResourceLoad):
(WebKit::NetworkConnectionToWebProcess::performSynchronousLoad):
* NetworkProcess/NetworkConnectionToWebProcess.h:
* NetworkProcess/NetworkResourceLoader.cpp:
(WebKit::NetworkResourceLoader::SynchronousLoadData::SynchronousLoadData):
(WebKit::sendReplyToSynchronousRequest):
(WebKit::NetworkResourceLoader::NetworkResourceLoader):
(WebKit::NetworkResourceLoader::startNetworkLoad):
(WebKit::NetworkResourceLoader::didFinishLoading):
(WebKit::NetworkResourceLoader::willSendRedirectedRequest):
(WebKit::NetworkResourceLoader::bufferingTimerFired):
(WebKit::NetworkResourceLoader::sendBufferMaybeAborting):
(WebKit::NetworkResourceLoader::validateCacheEntry):
(WebKit::NetworkResourceLoader::messageSenderConnection):
(WebKit::NetworkResourceLoader::invalidateSandboxExtensions):
(WebKit::NetworkResourceLoader::~NetworkResourceLoader): Deleted.
(WebKit::NetworkResourceLoader::didReceiveBuffer): Deleted.
(WebKit::NetworkResourceLoader::didRetrieveCacheEntry): Deleted.
(WebKit::NetworkResourceLoader::consumeSandboxExtensions): Deleted.
(WebKit::NetworkResourceLoader::sendAbortingOnFailure): Deleted.
* NetworkProcess/NetworkResourceLoader.h:
* NetworkProcess/mac/NetworkDiskCacheMonitor.h:

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (192061 => 192062)


--- trunk/Source/WebKit2/ChangeLog	2015-11-05 19:22:42 UTC (rev 192061)
+++ trunk/Source/WebKit2/ChangeLog	2015-11-05 19:25:29 UTC (rev 192062)
@@ -1,5 +1,41 @@
 2015-11-05  Chris Dumez  <[email protected]>
 
+        [WK2] Clean up / Modernize NetworkResourceLoader
+        https://bugs.webkit.org/show_bug.cgi?id=150922
+
+        Reviewed by Andreas Kling.
+
+        Clean up / Modernize NetworkResourceLoader.
+
+        * NetworkProcess/FileAPI/NetworkBlobRegistry.cpp:
+        (WebKit::NetworkBlobRegistry::filesInBlob):
+        * NetworkProcess/FileAPI/NetworkBlobRegistry.h:
+        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
+        (WebKit::NetworkConnectionToWebProcess::scheduleResourceLoad):
+        (WebKit::NetworkConnectionToWebProcess::performSynchronousLoad):
+        * NetworkProcess/NetworkConnectionToWebProcess.h:
+        * NetworkProcess/NetworkResourceLoader.cpp:
+        (WebKit::NetworkResourceLoader::SynchronousLoadData::SynchronousLoadData):
+        (WebKit::sendReplyToSynchronousRequest):
+        (WebKit::NetworkResourceLoader::NetworkResourceLoader):
+        (WebKit::NetworkResourceLoader::startNetworkLoad):
+        (WebKit::NetworkResourceLoader::didFinishLoading):
+        (WebKit::NetworkResourceLoader::willSendRedirectedRequest):
+        (WebKit::NetworkResourceLoader::bufferingTimerFired):
+        (WebKit::NetworkResourceLoader::sendBufferMaybeAborting):
+        (WebKit::NetworkResourceLoader::validateCacheEntry):
+        (WebKit::NetworkResourceLoader::messageSenderConnection):
+        (WebKit::NetworkResourceLoader::invalidateSandboxExtensions):
+        (WebKit::NetworkResourceLoader::~NetworkResourceLoader): Deleted.
+        (WebKit::NetworkResourceLoader::didReceiveBuffer): Deleted.
+        (WebKit::NetworkResourceLoader::didRetrieveCacheEntry): Deleted.
+        (WebKit::NetworkResourceLoader::consumeSandboxExtensions): Deleted.
+        (WebKit::NetworkResourceLoader::sendAbortingOnFailure): Deleted.
+        * NetworkProcess/NetworkResourceLoader.h:
+        * NetworkProcess/mac/NetworkDiskCacheMonitor.h:
+
+2015-11-05  Chris Dumez  <[email protected]>
+
         Regression(r192038): Safari cannot load any pages
         https://bugs.webkit.org/show_bug.cgi?id=150937
         <rdar://problem/23413859>

Modified: trunk/Source/WebKit2/NetworkProcess/FileAPI/NetworkBlobRegistry.cpp (192061 => 192062)


--- trunk/Source/WebKit2/NetworkProcess/FileAPI/NetworkBlobRegistry.cpp	2015-11-05 19:22:42 UTC (rev 192061)
+++ trunk/Source/WebKit2/NetworkProcess/FileAPI/NetworkBlobRegistry.cpp	2015-11-05 19:25:29 UTC (rev 192062)
@@ -131,9 +131,9 @@
     m_blobsForConnection.remove(connection);
 }
 
-Vector<RefPtr<BlobDataFileReference>> NetworkBlobRegistry::filesInBlob(NetworkConnectionToWebProcess* connection, const WebCore::URL& url)
+Vector<RefPtr<BlobDataFileReference>> NetworkBlobRegistry::filesInBlob(NetworkConnectionToWebProcess& connection, const WebCore::URL& url)
 {
-    if (!m_blobsForConnection.contains(connection) || !m_blobsForConnection.find(connection)->value.contains(url))
+    if (!m_blobsForConnection.contains(&connection) || !m_blobsForConnection.find(&connection)->value.contains(url))
         return Vector<RefPtr<BlobDataFileReference>>();
 
     ASSERT(blobRegistry().isBlobRegistryImpl());

Modified: trunk/Source/WebKit2/NetworkProcess/FileAPI/NetworkBlobRegistry.h (192061 => 192062)


--- trunk/Source/WebKit2/NetworkProcess/FileAPI/NetworkBlobRegistry.h	2015-11-05 19:22:42 UTC (rev 192061)
+++ trunk/Source/WebKit2/NetworkProcess/FileAPI/NetworkBlobRegistry.h	2015-11-05 19:25:29 UTC (rev 192062)
@@ -57,7 +57,7 @@
 
     void connectionToWebProcessDidClose(NetworkConnectionToWebProcess*);
 
-    Vector<RefPtr<WebCore::BlobDataFileReference>> filesInBlob(NetworkConnectionToWebProcess*, const WebCore::URL&);
+    Vector<RefPtr<WebCore::BlobDataFileReference>> filesInBlob(NetworkConnectionToWebProcess&, const WebCore::URL&);
 
 private:
     ~NetworkBlobRegistry();

Modified: trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.cpp (192061 => 192062)


--- trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.cpp	2015-11-05 19:22:42 UTC (rev 192061)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.cpp	2015-11-05 19:25:29 UTC (rev 192062)
@@ -118,14 +118,14 @@
 
 void NetworkConnectionToWebProcess::scheduleResourceLoad(const NetworkResourceLoadParameters& loadParameters)
 {
-    auto loader = NetworkResourceLoader::create(loadParameters, this);
+    auto loader = NetworkResourceLoader::create(loadParameters, *this);
     m_networkResourceLoaders.add(loadParameters.identifier, loader.ptr());
     loader->start();
 }
 
-void NetworkConnectionToWebProcess::performSynchronousLoad(const NetworkResourceLoadParameters& loadParameters, PassRefPtr<Messages::NetworkConnectionToWebProcess::PerformSynchronousLoad::DelayedReply> reply)
+void NetworkConnectionToWebProcess::performSynchronousLoad(const NetworkResourceLoadParameters& loadParameters, RefPtr<Messages::NetworkConnectionToWebProcess::PerformSynchronousLoad::DelayedReply>&& reply)
 {
-    auto loader = NetworkResourceLoader::create(loadParameters, this, reply);
+    auto loader = NetworkResourceLoader::create(loadParameters, *this, WTF::move(reply));
     m_networkResourceLoaders.add(loadParameters.identifier, loader.ptr());
     loader->start();
 }

Modified: trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.h (192061 => 192062)


--- trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.h	2015-11-05 19:22:42 UTC (rev 192061)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkConnectionToWebProcess.h	2015-11-05 19:25:29 UTC (rev 192062)
@@ -71,7 +71,7 @@
     void didReceiveSyncNetworkConnectionToWebProcessMessage(IPC::Connection&, IPC::MessageDecoder&, std::unique_ptr<IPC::MessageEncoder>&);
     
     void scheduleResourceLoad(const NetworkResourceLoadParameters&);
-    void performSynchronousLoad(const NetworkResourceLoadParameters&, PassRefPtr<Messages::NetworkConnectionToWebProcess::PerformSynchronousLoad::DelayedReply>);
+    void performSynchronousLoad(const NetworkResourceLoadParameters&, RefPtr<Messages::NetworkConnectionToWebProcess::PerformSynchronousLoad::DelayedReply>&&);
     void loadPing(const NetworkResourceLoadParameters&);
     void prefetchDNS(const String&);
 

Modified: trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoader.cpp (192061 => 192062)


--- trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoader.cpp	2015-11-05 19:22:42 UTC (rev 192061)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoader.cpp	2015-11-05 19:25:29 UTC (rev 192062)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2012-2014 Apple Inc. All rights reserved.
+ * Copyright (C) 2012-2015 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -34,11 +34,7 @@
 #include "NetworkCache.h"
 #include "NetworkConnectionToWebProcess.h"
 #include "NetworkLoad.h"
-#include "NetworkProcess.h"
 #include "NetworkProcessConnectionMessages.h"
-#include "NetworkResourceLoadParameters.h"
-#include "ShareableResource.h"
-#include "SharedMemory.h"
 #include "WebCoreArgumentCoders.h"
 #include "WebResourceLoaderMessages.h"
 #include <WebCore/BlobDataFileReference.h>
@@ -48,25 +44,25 @@
 #include <WebCore/SharedBuffer.h>
 #include <WebCore/SynchronousLoaderClient.h>
 #include <wtf/CurrentTime.h>
-#include <wtf/MainThread.h>
+#include <wtf/RunLoop.h>
 
 using namespace WebCore;
 
 namespace WebKit {
 
 struct NetworkResourceLoader::SynchronousLoadData {
-    SynchronousLoadData(PassRefPtr<Messages::NetworkConnectionToWebProcess::PerformSynchronousLoad::DelayedReply> reply)
-        : delayedReply(reply)
+    SynchronousLoadData(RefPtr<Messages::NetworkConnectionToWebProcess::PerformSynchronousLoad::DelayedReply>&& reply)
+        : delayedReply(WTF::move(reply))
     {
         ASSERT(delayedReply);
     }
-    WebCore::ResourceRequest currentRequest;
+    ResourceRequest currentRequest;
     RefPtr<Messages::NetworkConnectionToWebProcess::PerformSynchronousLoad::DelayedReply> delayedReply;
-    WebCore::ResourceResponse response;
-    WebCore::ResourceError error;
+    ResourceResponse response;
+    ResourceError error;
 };
 
-static void sendReplyToSynchronousRequest(NetworkResourceLoader::SynchronousLoadData& data, const WebCore::SharedBuffer* buffer)
+static void sendReplyToSynchronousRequest(NetworkResourceLoader::SynchronousLoadData& data, const SharedBuffer* buffer)
 {
     ASSERT(data.delayedReply);
     ASSERT(!data.response.isNull() || !data.error.isNull());
@@ -79,13 +75,9 @@
     data.delayedReply = nullptr;
 }
 
-NetworkResourceLoader::NetworkResourceLoader(const NetworkResourceLoadParameters& parameters, NetworkConnectionToWebProcess* connection, PassRefPtr<Messages::NetworkConnectionToWebProcess::PerformSynchronousLoad::DelayedReply> synchronousReply)
+NetworkResourceLoader::NetworkResourceLoader(const NetworkResourceLoadParameters& parameters, NetworkConnectionToWebProcess& connection, RefPtr<Messages::NetworkConnectionToWebProcess::PerformSynchronousLoad::DelayedReply>&& synchronousReply)
     : m_parameters(parameters)
     , m_connection(connection)
-    , m_bytesReceived(0)
-    , m_bufferedDataEncodedDataLength(0)
-    , m_didConvertHandleToDownload(false)
-    , m_didConsumeSandboxExtensions(false)
     , m_defersLoading(parameters.defersLoading)
     , m_bufferingTimer(*this, &NetworkResourceLoader::bufferingTimerFired)
 {
@@ -95,7 +87,7 @@
     ASSERT((m_parameters.webPageID && m_parameters.webFrameID) || m_parameters.clientCredentialPolicy == DoNotAskClientForAnyCredentials);
 
     if (originalRequest().httpBody()) {
-        for (const FormDataElement& element : originalRequest().httpBody()->elements()) {
+        for (const auto& element : originalRequest().httpBody()->elements()) {
             if (element.m_type == FormDataElement::Type::EncodedBlob)
                 m_fileReferences.appendVector(NetworkBlobRegistry::singleton().filesInBlob(connection, element.m_url));
         }
@@ -107,7 +99,7 @@
     }
 
     if (synchronousReply)
-        m_synchronousLoadData = std::make_unique<SynchronousLoadData>(synchronousReply);
+        m_synchronousLoadData = std::make_unique<SynchronousLoadData>(WTF::move(synchronousReply));
 }
 
 NetworkResourceLoader::~NetworkResourceLoader()
@@ -165,11 +157,11 @@
     consumeSandboxExtensions();
 
     if (isSynchronous() || m_parameters.maximumBufferingTime > 0_ms)
-        m_bufferedData = WebCore::SharedBuffer::create();
+        m_bufferedData = SharedBuffer::create();
 
 #if ENABLE(NETWORK_CACHE)
     if (NetworkCache::singleton().isEnabled())
-        m_bufferedDataForCache = WebCore::SharedBuffer::create();
+        m_bufferedDataForCache = SharedBuffer::create();
 #endif
 
     NetworkLoadParameters parameters = m_parameters;
@@ -275,9 +267,8 @@
 #if ENABLE(NETWORK_CACHE)
     shouldContinueDidReceiveResponse = shouldContinueDidReceiveResponse || m_cacheEntryForValidation;
 #endif
-    if (!shouldContinueDidReceiveResponse)
-        return ShouldContinueDidReceiveResponse::No;
-    return ShouldContinueDidReceiveResponse::Yes;
+
+    return shouldContinueDidReceiveResponse ? ShouldContinueDidReceiveResponse::Yes : ShouldContinueDidReceiveResponse::No;
 }
 
 void NetworkResourceLoader::didReceiveBuffer(RefPtr<SharedBuffer>&& buffer, int reportedEncodedDataLength)
@@ -319,18 +310,18 @@
             return;
         }
         bool allowStale = originalRequest().cachePolicy() >= ReturnCacheDataElseLoad;
-        bool hasCacheableRedirect = m_response.isHTTP() && WebCore::redirectChainAllowsReuse(m_redirectChainCacheStatus, allowStale ? WebCore::ReuseExpiredRedirection : WebCore::DoNotReuseExpiredRedirection);
+        bool hasCacheableRedirect = m_response.isHTTP() && redirectChainAllowsReuse(m_redirectChainCacheStatus, allowStale ? ReuseExpiredRedirection : DoNotReuseExpiredRedirection);
         if (hasCacheableRedirect && m_redirectChainCacheStatus.status == RedirectChainCacheStatus::CachedRedirection) {
             // Maybe we should cache the actual redirects instead of the end result?
             auto now = std::chrono::system_clock::now();
-            auto responseEndOfValidity = now + WebCore::computeFreshnessLifetimeForHTTPFamily(m_response, now) - WebCore::computeCurrentAge(m_response, now);
+            auto responseEndOfValidity = now + computeFreshnessLifetimeForHTTPFamily(m_response, now) - computeCurrentAge(m_response, now);
             hasCacheableRedirect = responseEndOfValidity <= m_redirectChainCacheStatus.endOfValidity;
         }
 
-        bool isPrivate = sessionID().isEphemeral();
-        if (m_bufferedDataForCache && hasCacheableRedirect && !isPrivate) {
+        bool isPrivateSession = sessionID().isEphemeral();
+        if (m_bufferedDataForCache && hasCacheableRedirect && !isPrivateSession) {
             // Keep the connection alive.
-            RefPtr<NetworkConnectionToWebProcess> connection(connectionToWebProcess());
+            RefPtr<NetworkConnectionToWebProcess> connection(&connectionToWebProcess());
             RefPtr<NetworkResourceLoader> loader(this);
             NetworkCache::singleton().store(originalRequest(), m_response, WTF::move(m_bufferedDataForCache), [loader, connection](NetworkCache::MappedBody& mappedBody) {
 #if ENABLE(SHAREABLE_RESOURCE)
@@ -350,7 +341,7 @@
     if (isSynchronous())
         sendReplyToSynchronousRequest(*m_synchronousLoadData, m_bufferedData.get());
     else {
-        if (m_bufferedData && m_bufferedData->size()) {
+        if (m_bufferedData && !m_bufferedData->isEmpty()) {
             // FIXME: Pass a real value or remove the encoded data size feature.
             bool shouldContinue = sendBufferMaybeAborting(*m_bufferedData, -1);
             if (!shouldContinue)
@@ -382,7 +373,7 @@
 void NetworkResourceLoader::willSendRedirectedRequest(const ResourceRequest& request, const ResourceResponse& redirectResponse)
 {
 #if ENABLE(NETWORK_CACHE)
-    WebCore::updateRedirectChainStatus(m_redirectChainCacheStatus, redirectResponse);
+    updateRedirectChainStatus(m_redirectChainCacheStatus, redirectResponse);
 #endif
 
     if (isSynchronous()) {
@@ -434,25 +425,25 @@
     ASSERT(m_bufferedData);
     ASSERT(m_networkLoad);
 
-    if (!m_bufferedData->size())
+    if (m_bufferedData->isEmpty())
         return;
 
     IPC::SharedBufferDataReference dataReference(m_bufferedData.get());
     size_t encodedLength = m_bufferedDataEncodedDataLength;
 
-    m_bufferedData = WebCore::SharedBuffer::create();
+    m_bufferedData = SharedBuffer::create();
     m_bufferedDataEncodedDataLength = 0;
 
     sendAbortingOnFailure(Messages::WebResourceLoader::DidReceiveData(dataReference, encodedLength));
 }
 
-bool NetworkResourceLoader::sendBufferMaybeAborting(const WebCore::SharedBuffer& buffer, size_t encodedDataLength)
+bool NetworkResourceLoader::sendBufferMaybeAborting(SharedBuffer& buffer, size_t encodedDataLength)
 {
     ASSERT(!isSynchronous());
 
 #if PLATFORM(COCOA)
     ShareableResource::Handle shareableResourceHandle;
-    NetworkResourceLoader::tryGetShareableHandleFromSharedBuffer(shareableResourceHandle, const_cast<WebCore::SharedBuffer&>(buffer));
+    NetworkResourceLoader::tryGetShareableHandleFromSharedBuffer(shareableResourceHandle, buffer);
     if (!shareableResourceHandle.isNull()) {
         send(Messages::WebResourceLoader::DidReceiveResource(shareableResourceHandle, currentTime()));
         abort();
@@ -460,7 +451,7 @@
     }
 #endif
 
-    IPC::SharedBufferDataReference dataReference(&const_cast<WebCore::SharedBuffer&>(buffer));
+    IPC::SharedBufferDataReference dataReference(&buffer);
     return sendAbortingOnFailure(Messages::WebResourceLoader::DidReceiveData(dataReference, encodedDataLength));
 }
 
@@ -507,12 +498,12 @@
     // and we should not overwrite the existing conditional headers.
     ResourceRequest revalidationRequest = originalRequest();
     if (!revalidationRequest.isConditional()) {
-        String eTag = entry->response().httpHeaderField(WebCore::HTTPHeaderName::ETag);
-        String lastModified = entry->response().httpHeaderField(WebCore::HTTPHeaderName::LastModified);
+        String eTag = entry->response().httpHeaderField(HTTPHeaderName::ETag);
+        String lastModified = entry->response().httpHeaderField(HTTPHeaderName::LastModified);
         if (!eTag.isEmpty())
-            revalidationRequest.setHTTPHeaderField(WebCore::HTTPHeaderName::IfNoneMatch, eTag);
+            revalidationRequest.setHTTPHeaderField(HTTPHeaderName::IfNoneMatch, eTag);
         if (!lastModified.isEmpty())
-            revalidationRequest.setHTTPHeaderField(WebCore::HTTPHeaderName::IfModifiedSince, lastModified);
+            revalidationRequest.setHTTPHeaderField(HTTPHeaderName::IfModifiedSince, lastModified);
     }
 
     m_cacheEntryForValidation = WTF::move(entry);
@@ -523,7 +514,7 @@
 
 IPC::Connection* NetworkResourceLoader::messageSenderConnection()
 {
-    return connectionToWebProcess()->connection();
+    return connectionToWebProcess().connection();
 }
 
 void NetworkResourceLoader::consumeSandboxExtensions()
@@ -551,11 +542,11 @@
             extension->revoke();
         for (auto& fileReference : m_fileReferences)
             fileReference->revokeFileAccess();
+
+        m_didConsumeSandboxExtensions = false;
     }
 
     m_fileReferences.clear();
-
-    m_didConsumeSandboxExtensions = false;
 }
 
 template<typename T>

Modified: trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoader.h (192061 => 192062)


--- trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoader.h	2015-11-05 19:22:42 UTC (rev 192061)
+++ trunk/Source/WebKit2/NetworkProcess/NetworkResourceLoader.h	2015-11-05 19:25:29 UTC (rev 192062)
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2012-2014 Apple Inc. All rights reserved.
+ * Copyright (C) 2012-2015 Apple Inc. All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -29,14 +29,10 @@
 #if ENABLE(NETWORK_PROCESS)
 
 #include "MessageSender.h"
-#include "NetworkCache.h"
 #include "NetworkConnectionToWebProcessMessages.h"
 #include "NetworkLoadClient.h"
 #include "NetworkResourceLoadParameters.h"
 #include "ShareableResource.h"
-#include <WebCore/CacheValidation.h>
-#include <WebCore/ResourceLoaderOptions.h>
-#include <WebCore/SessionID.h>
 #include <WebCore/Timer.h>
 #include <wtf/Optional.h>
 
@@ -48,25 +44,20 @@
 namespace WebKit {
 
 class NetworkConnectionToWebProcess;
-class NetworkResourceLoadParameters;
 class NetworkLoad;
 class SandboxExtension;
 
-class NetworkResourceLoader
-    : public RefCounted<NetworkResourceLoader>
-    , public NetworkLoadClient
-    , public IPC::MessageSender {
+namespace NetworkCache {
+class Entry;
+}
+
+class NetworkResourceLoader final : public RefCounted<NetworkResourceLoader>, public NetworkLoadClient, public IPC::MessageSender {
 public:
-    static Ref<NetworkResourceLoader> create(const NetworkResourceLoadParameters& parameters, NetworkConnectionToWebProcess* connection)
+    static Ref<NetworkResourceLoader> create(const NetworkResourceLoadParameters& parameters, NetworkConnectionToWebProcess& connection, RefPtr<Messages::NetworkConnectionToWebProcess::PerformSynchronousLoad::DelayedReply>&& reply = nullptr)
     {
-        return adoptRef(*new NetworkResourceLoader(parameters, connection, nullptr));
+        return adoptRef(*new NetworkResourceLoader(parameters, connection, WTF::move(reply)));
     }
-    
-    static Ref<NetworkResourceLoader> create(const NetworkResourceLoadParameters& parameters, NetworkConnectionToWebProcess* connection, PassRefPtr<Messages::NetworkConnectionToWebProcess::PerformSynchronousLoad::DelayedReply> reply)
-    {
-        return adoptRef(*new NetworkResourceLoader(parameters, connection, reply));
-    }    
-    ~NetworkResourceLoader();
+    virtual ~NetworkResourceLoader();
 
     const WebCore::ResourceRequest& originalRequest() const { return m_parameters.request; }
 
@@ -100,7 +91,7 @@
     WebCore::SharedBuffer* bufferedData() { return m_bufferedData.get(); }
     const WebCore::ResourceResponse& response() const { return m_response; }
 
-    NetworkConnectionToWebProcess* connectionToWebProcess() const { return m_connection.get(); }
+    NetworkConnectionToWebProcess& connectionToWebProcess() { return m_connection; }
     WebCore::SessionID sessionID() const { return m_parameters.sessionID; }
     ResourceLoadIdentifier identifier() const { return m_parameters.identifier; }
 
@@ -117,7 +108,7 @@
     virtual void didFailLoading(const WebCore::ResourceError&) override;
 
 private:
-    NetworkResourceLoader(const NetworkResourceLoadParameters&, NetworkConnectionToWebProcess*, PassRefPtr<Messages::NetworkConnectionToWebProcess::PerformSynchronousLoad::DelayedReply>);
+    NetworkResourceLoader(const NetworkResourceLoadParameters&, NetworkConnectionToWebProcess&, RefPtr<Messages::NetworkConnectionToWebProcess::PerformSynchronousLoad::DelayedReply>&&);
 
     // IPC::MessageSender
     virtual IPC::Connection* messageSenderConnection() override;
@@ -137,7 +128,7 @@
 
     void startBufferingTimerIfNeeded();
     void bufferingTimerFired();
-    bool sendBufferMaybeAborting(const WebCore::SharedBuffer&, size_t encodedDataLength);
+    bool sendBufferMaybeAborting(WebCore::SharedBuffer&, size_t encodedDataLength);
 
     void consumeSandboxExtensions();
     void invalidateSandboxExtensions();
@@ -146,22 +137,22 @@
 
     const NetworkResourceLoadParameters m_parameters;
 
-    RefPtr<NetworkConnectionToWebProcess> m_connection;
+    Ref<NetworkConnectionToWebProcess> m_connection;
 
     std::unique_ptr<NetworkLoad> m_networkLoad;
 
     WebCore::ResourceResponse m_response;
 
-    size_t m_bytesReceived;
-    size_t m_bufferedDataEncodedDataLength;
+    size_t m_bytesReceived { 0 };
+    size_t m_bufferedDataEncodedDataLength { 0 };
     RefPtr<WebCore::SharedBuffer> m_bufferedData;
 
     std::unique_ptr<SynchronousLoadData> m_synchronousLoadData;
     Vector<RefPtr<WebCore::BlobDataFileReference>> m_fileReferences;
 
-    bool m_didConvertHandleToDownload;
-    bool m_didConsumeSandboxExtensions;
-    bool m_defersLoading;
+    bool m_didConvertHandleToDownload { false };
+    bool m_didConsumeSandboxExtensions { false };
+    bool m_defersLoading { false };
 
     WebCore::Timer m_bufferingTimer;
 #if ENABLE(NETWORK_CACHE)

Modified: trunk/Source/WebKit2/NetworkProcess/mac/NetworkDiskCacheMonitor.h (192061 => 192062)


--- trunk/Source/WebKit2/NetworkProcess/mac/NetworkDiskCacheMonitor.h	2015-11-05 19:22:42 UTC (rev 192061)
+++ trunk/Source/WebKit2/NetworkProcess/mac/NetworkDiskCacheMonitor.h	2015-11-05 19:25:29 UTC (rev 192062)
@@ -54,7 +54,7 @@
     virtual IPC::Connection* messageSenderConnection() override;
     virtual uint64_t messageSenderDestinationID() override;
 
-    RefPtr<NetworkConnectionToWebProcess> m_connectionToWebProcess;
+    Ref<NetworkConnectionToWebProcess> m_connectionToWebProcess;
 };
 
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to