Changeset 240117 in webkit


Ignore:
Timestamp:
Jan 17, 2019, 11:10:53 AM (6 years ago)
Author:
achristensen@apple.com
Message:

Stop using NetworkStorageSession::storageSession in WebCore
https://bugs.webkit.org/show_bug.cgi?id=193529

Reviewed by Tim Horton.

Source/WebCore:

Ownership of the map that NetworkStorageSession::storageSession searches needs to move to the WebKit/WebKitLegacy layer,
so when WebCore used to look in this map it needs to call a client function to ask the layer above it for the storage object.
I've called this client StorageSessionProvider::storageSession. Right now it just looks in NetworkStorageSession::storageSession,
but this added abstraction makes it possible to move the currently process-global map to be a member of the NetworkProcess object.

  • Modules/websockets/WebSocketChannel.cpp:

(WebCore::WebSocketChannel::connect):

  • WebCore.xcodeproj/project.pbxproj:
  • loader/CookieJar.cpp:

(WebCore::CookieJar::create):
(WebCore::CookieJar::CookieJar):
(WebCore::CookieJar::cookies const):
(WebCore::CookieJar::setCookies):
(WebCore::CookieJar::cookiesEnabled const):
(WebCore::CookieJar::cookieRequestHeaderFieldValue const):
(WebCore::CookieJar::getRawCookies const):
(WebCore::CookieJar::deleteCookie):

  • loader/CookieJar.h:
  • loader/EmptyClients.cpp:

(WebCore::pageConfigurationWithEmptyClients):

  • page/Page.h:
  • page/SocketProvider.cpp:

(WebCore::SocketProvider::createSocketStreamHandle):

  • page/SocketProvider.h:
  • platform/network/NetworkingContext.h:
  • platform/network/SocketStreamHandleImpl.cpp:

(WebCore::cookieDataForHandshake):
(WebCore::SocketStreamHandleImpl::platformSendHandshake):

  • platform/network/StorageSessionProvider.h: Added.

(WebCore::StorageSessionProvider::~StorageSessionProvider):

  • platform/network/cf/SocketStreamHandleImpl.h:

(WebCore::SocketStreamHandleImpl::create):

  • platform/network/cf/SocketStreamHandleImplCFNet.cpp:

(WebCore::SocketStreamHandleImpl::SocketStreamHandleImpl):
(WebCore::SocketStreamHandleImpl::getStoredCONNECTProxyCredentials):

  • platform/network/curl/SocketStreamHandleImpl.h:

(WebCore::SocketStreamHandleImpl::create):

  • platform/network/soup/SocketStreamHandleImpl.h:
  • platform/network/soup/SocketStreamHandleImplSoup.cpp:

(WebCore::SocketStreamHandleImpl::create):

Source/WebKit:

  • NetworkProcess/NetworkConnectionToWebProcess.cpp:

(WebKit::NetworkConnectionToWebProcess::createSocketStream):

  • NetworkProcess/NetworkProcess.h:
  • NetworkProcess/NetworkSocketStream.cpp:

(WebKit::NetworkSocketStream::create):
(WebKit::NetworkSocketStream::NetworkSocketStream):

  • NetworkProcess/NetworkSocketStream.h:
  • NetworkProcess/NetworkStorageSessionProvider.h: Added.
  • WebKit.xcodeproj/project.pbxproj:
  • WebProcess/Network/WebSocketProvider.cpp:

(WebKit::WebSocketProvider::createSocketStreamHandle):

  • WebProcess/Network/WebSocketProvider.h:
  • WebProcess/WebPage/WebCookieJar.cpp:

(WebKit::WebCookieJar::WebCookieJar):

  • WebProcess/WebPage/WebCookieJar.h:

Source/WebKitLegacy:

  • WebCoreSupport/PageStorageSessionProvider.h: Added.
  • WebKitLegacy.xcodeproj/project.pbxproj:

Source/WebKitLegacy/mac:

  • Misc/WebCache.mm:

(+[WebCache addImageToCache:forURL:forFrame:]):

  • WebView/WebView.mm:

(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):

Source/WebKitLegacy/win:

  • WebView.cpp:

(WebView::initWithFrame):

Location:
trunk/Source
Files:
3 added
33 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r240112 r240117  
     12019-01-17  Alex Christensen  <achristensen@webkit.org>
     2
     3        Stop using NetworkStorageSession::storageSession in WebCore
     4        https://bugs.webkit.org/show_bug.cgi?id=193529
     5
     6        Reviewed by Tim Horton.
     7
     8        Ownership of the map that NetworkStorageSession::storageSession searches needs to move to the WebKit/WebKitLegacy layer,
     9        so when WebCore used to look in this map it needs to call a client function to ask the layer above it for the storage object.
     10        I've called this client StorageSessionProvider::storageSession.  Right now it just looks in NetworkStorageSession::storageSession,
     11        but this added abstraction makes it possible to move the currently process-global map to be a member of the NetworkProcess object.
     12
     13        * Modules/websockets/WebSocketChannel.cpp:
     14        (WebCore::WebSocketChannel::connect):
     15        * WebCore.xcodeproj/project.pbxproj:
     16        * loader/CookieJar.cpp:
     17        (WebCore::CookieJar::create):
     18        (WebCore::CookieJar::CookieJar):
     19        (WebCore::CookieJar::cookies const):
     20        (WebCore::CookieJar::setCookies):
     21        (WebCore::CookieJar::cookiesEnabled const):
     22        (WebCore::CookieJar::cookieRequestHeaderFieldValue const):
     23        (WebCore::CookieJar::getRawCookies const):
     24        (WebCore::CookieJar::deleteCookie):
     25        * loader/CookieJar.h:
     26        * loader/EmptyClients.cpp:
     27        (WebCore::pageConfigurationWithEmptyClients):
     28        * page/Page.h:
     29        * page/SocketProvider.cpp:
     30        (WebCore::SocketProvider::createSocketStreamHandle):
     31        * page/SocketProvider.h:
     32        * platform/network/NetworkingContext.h:
     33        * platform/network/SocketStreamHandleImpl.cpp:
     34        (WebCore::cookieDataForHandshake):
     35        (WebCore::SocketStreamHandleImpl::platformSendHandshake):
     36        * platform/network/StorageSessionProvider.h: Added.
     37        (WebCore::StorageSessionProvider::~StorageSessionProvider):
     38        * platform/network/cf/SocketStreamHandleImpl.h:
     39        (WebCore::SocketStreamHandleImpl::create):
     40        * platform/network/cf/SocketStreamHandleImplCFNet.cpp:
     41        (WebCore::SocketStreamHandleImpl::SocketStreamHandleImpl):
     42        (WebCore::SocketStreamHandleImpl::getStoredCONNECTProxyCredentials):
     43        * platform/network/curl/SocketStreamHandleImpl.h:
     44        (WebCore::SocketStreamHandleImpl::create):
     45        * platform/network/soup/SocketStreamHandleImpl.h:
     46        * platform/network/soup/SocketStreamHandleImplSoup.cpp:
     47        (WebCore::SocketStreamHandleImpl::create):
     48
    1492019-01-17  Jon Lee  <jonlee@apple.com>
    250
  • trunk/Source/WebCore/Modules/websockets/WebSocketChannel.cpp

    r240014 r240117  
    4141#include "InspectorInstrumentation.h"
    4242#include "Logging.h"
     43#include "NetworkingContext.h"
    4344#include "Page.h"
    4445#include "ProgressTracker.h"
     
    124125        PAL::SessionID sessionID = page ? page->sessionID() : PAL::SessionID::defaultSessionID();
    125126        String partition = m_document->domainForCachePartition();
    126         m_handle = m_socketProvider->createSocketStreamHandle(m_handshake->url(), *this, sessionID, partition);
     127        m_handle = m_socketProvider->createSocketStreamHandle(m_handshake->url(), *this, sessionID, partition, frame->loader().networkingContext());
    127128    }
    128129}
  • trunk/Source/WebCore/WebCore.xcodeproj/project.pbxproj

    r240105 r240117  
    19031903                5C4304B6191AEF46000E2BC0 /* JSEXTShaderTextureLOD.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C4304B4191AEF46000E2BC0 /* JSEXTShaderTextureLOD.h */; };
    19041904                5C7C88D81D0F1F4A009D2F6D /* SocketProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C7C88D71D0F1F2B009D2F6D /* SocketProvider.h */; settings = {ATTRIBUTES = (Private, ); }; };
     1905                5C9EF2F321F06190003BDC56 /* StorageSessionProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C9EF2F221F06171003BDC56 /* StorageSessionProvider.h */; settings = {ATTRIBUTES = (Private, ); }; };
    19051906                5CA1DEC61F71F1C700E71BD3 /* HTTPHeaderField.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CA1DEC41F71E68700E71BD3 /* HTTPHeaderField.h */; settings = {ATTRIBUTES = (Private, ); }; };
    19061907                5CB37FFF1C62D2A100F20188 /* ScrollAnimatorMock.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CB37FFD1C62D27800F20188 /* ScrollAnimatorMock.h */; };
     
    89118912                5C9EF16F1DFF719900A452E3 /* XPathGrammar.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = XPathGrammar.cpp; sourceTree = "<group>"; };
    89128913                5C9EF1701DFF719900A452E3 /* XPathGrammar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XPathGrammar.h; sourceTree = "<group>"; };
     8914                5C9EF2F221F06171003BDC56 /* StorageSessionProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StorageSessionProvider.h; sourceTree = "<group>"; };
    89138915                5CA1DEC21F71E68600E71BD3 /* HTTPHeaderField.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = HTTPHeaderField.cpp; sourceTree = "<group>"; };
    89148916                5CA1DEC41F71E68700E71BD3 /* HTTPHeaderField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HTTPHeaderField.h; sourceTree = "<group>"; };
     
    1994019942                                510D4A32103165EE0049EA54 /* SocketStreamHandleClient.h */,
    1994119943                                5C668E641E7C6C3500D32B3B /* SocketStreamHandleImpl.cpp */,
     19944                                5C9EF2F221F06171003BDC56 /* StorageSessionProvider.h */,
    1994219945                                4682D1FF1F79782300C863DB /* StoredCredentialsPolicy.h */,
    1994319946                                E180811016FCF42E00B80D07 /* SynchronousLoaderClient.cpp */,
     
    3154531548                                C50D0E830FF4272900AC2644 /* StorageNamespace.h in Headers */,
    3154631549                                1A37636C1A2E68BB009A7EE2 /* StorageNamespaceProvider.h in Headers */,
     31550                                5C9EF2F321F06190003BDC56 /* StorageSessionProvider.h in Headers */,
    3154731551                                5166D3CD1E8ED48F00AD62E3 /* StorageType.h in Headers */,
    3154831552                                4682D2001F79783000C863DB /* StoredCredentialsPolicy.h in Headers */,
  • trunk/Source/WebCore/loader/CookieJar.cpp

    r240014 r240117  
    3737#include "PlatformStrategies.h"
    3838#include "SameSiteInfo.h"
     39#include "StorageSessionProvider.h"
    3940#include <wtf/SystemTracing.h>
    4041
    4142namespace WebCore {
     43
     44Ref<CookieJar> CookieJar::create(Ref<StorageSessionProvider>&& storageSessionProvider)
     45{
     46    return adoptRef(*new CookieJar(WTFMove(storageSessionProvider)));
     47}
    4248
    4349IncludeSecureCookies CookieJar::shouldIncludeSecureCookies(const Document& document, const URL& url)
     
    5359}
    5460
    55 Ref<CookieJar> CookieJar::create()
     61CookieJar::CookieJar(Ref<StorageSessionProvider>&& storageSessionProvider)
     62    : m_storageSessionProvider(WTFMove(storageSessionProvider))
    5663{
    57     return adoptRef(*new CookieJar);
    5864}
    5965
     
    7480
    7581    std::pair<String, bool> result;
    76     if (auto* session = NetworkStorageSession::storageSession(document.sessionID()))
     82    if (auto* session = m_storageSessionProvider->storageSession())
    7783        result = session->cookiesForDOM(document.firstPartyForCookies(), sameSiteInfo(document), url, frameID, pageID, includeSecureCookies);
    7884    else
     
    111117    }
    112118
    113     if (auto* session = NetworkStorageSession::storageSession(document.sessionID()))
     119    if (auto* session = m_storageSessionProvider->storageSession())
    114120        session->setCookiesFromDOM(document.firstPartyForCookies(), sameSiteInfo(document), url, frameID, pageID, cookieString);
    115121    else
     
    117123}
    118124
    119 bool CookieJar::cookiesEnabled(const Document& document) const
     125bool CookieJar::cookiesEnabled(const Document&) const
    120126{
    121     if (auto* session = NetworkStorageSession::storageSession(document.sessionID()))
     127    if (auto* session = m_storageSessionProvider->storageSession())
    122128        return session->cookiesEnabled();
    123129
     
    126132}
    127133
    128 std::pair<String, SecureCookiesAccessed> CookieJar::cookieRequestHeaderFieldValue(const PAL::SessionID& sessionID, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies) const
     134std::pair<String, SecureCookiesAccessed> CookieJar::cookieRequestHeaderFieldValue(const PAL::SessionID&, const URL& firstParty, const SameSiteInfo& sameSiteInfo, const URL& url, Optional<uint64_t> frameID, Optional<uint64_t> pageID, IncludeSecureCookies includeSecureCookies) const
    129135{
    130     if (auto* session = NetworkStorageSession::storageSession(sessionID)) {
     136    if (auto* session = m_storageSessionProvider->storageSession()) {
    131137        std::pair<String, bool> result = session->cookieRequestHeaderFieldValue(firstParty, sameSiteInfo, url, frameID, pageID, includeSecureCookies);
    132138        return { result.first, result.second ? SecureCookiesAccessed::Yes : SecureCookiesAccessed::No };
     
    161167    }
    162168
    163     if (auto* session = NetworkStorageSession::storageSession(document.sessionID()))
     169    if (auto* session = m_storageSessionProvider->storageSession())
    164170        return session->getRawCookies(document.firstPartyForCookies(), sameSiteInfo(document), url, frameID, pageID, cookies);
    165171
     
    168174}
    169175
    170 void CookieJar::deleteCookie(const Document& document, const URL& url, const String& cookieName)
     176void CookieJar::deleteCookie(const Document&, const URL& url, const String& cookieName)
    171177{
    172     if (auto* session = NetworkStorageSession::storageSession(document.sessionID()))
     178    if (auto* session = m_storageSessionProvider->storageSession())
    173179        session->deleteCookie(url, cookieName);
    174180    else
  • trunk/Source/WebCore/loader/CookieJar.h

    r240014 r240117  
    4141struct Cookie;
    4242struct CookieRequestHeaderFieldProxy;
     43class NetworkStorageSession;
     44class StorageSessionProvider;
    4345struct SameSiteInfo;
    4446
    4547class WEBCORE_EXPORT CookieJar : public RefCounted<CookieJar> {
    4648public:
    47     static Ref<CookieJar> create();
     49    static Ref<CookieJar> create(Ref<StorageSessionProvider>&&);
    4850   
    4951    static CookieRequestHeaderFieldProxy cookieRequestHeaderFieldProxy(const Document&, const URL&);
     
    6466    static SameSiteInfo sameSiteInfo(const Document&);
    6567    static IncludeSecureCookies shouldIncludeSecureCookies(const Document&, const URL&);
     68    CookieJar(Ref<StorageSessionProvider>&&);
     69
     70private:
     71    Ref<StorageSessionProvider> m_storageSessionProvider;
    6672};
    6773
  • trunk/Source/WebCore/loader/EmptyClients.cpp

    r240031 r240117  
    536536}
    537537
     538class EmptyStorageSessionProvider : public StorageSessionProvider {
     539    NetworkStorageSession* storageSession() const final { return nullptr; }
     540};
     541
    538542PageConfiguration pageConfigurationWithEmptyClients()
    539543{
     
    544548        CacheStorageProvider::create(),
    545549        adoptRef(*new EmptyBackForwardClient),
    546         CookieJar::create()
     550        CookieJar::create(adoptRef(*new EmptyStorageSessionProvider))
    547551    };
    548552
  • trunk/Source/WebCore/page/Page.h

    r240014 r240117  
    4848#include <wtf/Ref.h>
    4949#include <wtf/UniqueRef.h>
     50#include <wtf/WeakPtr.h>
    5051#include <wtf/text/WTFString.h>
    5152
     
    167168enum class ShouldTreatAsContinuingLoad : bool;
    168169
    169 class Page : public Supplementable<Page> {
     170class Page : public Supplementable<Page>, public CanMakeWeakPtr<Page> {
    170171    WTF_MAKE_NONCOPYABLE(Page);
    171172    WTF_MAKE_FAST_ALLOCATED;
  • trunk/Source/WebCore/page/SocketProvider.cpp

    r220857 r240117  
    3131namespace WebCore {
    3232   
    33 Ref<SocketStreamHandle> SocketProvider::createSocketStreamHandle(const URL& url, SocketStreamHandleClient& client, PAL::SessionID sessionID, const String& credentialPartition)
     33Ref<SocketStreamHandle> SocketProvider::createSocketStreamHandle(const URL& url, SocketStreamHandleClient& client, PAL::SessionID sessionID, const String& credentialPartition, const StorageSessionProvider* provider)
    3434{
    35     return SocketStreamHandleImpl::create(url, client, sessionID, credentialPartition, { });
     35    return SocketStreamHandleImpl::create(url, client, sessionID, credentialPartition, { }, provider);
    3636}
    3737   
  • trunk/Source/WebCore/page/SocketProvider.h

    r238771 r240117  
    3232namespace WebCore {
    3333
     34class StorageSessionProvider;
    3435class ScriptExecutionContext;
    3536class SocketStreamHandle;
     
    3940public:
    4041    static Ref<SocketProvider> create() { return adoptRef(*new SocketProvider); }
    41     virtual Ref<SocketStreamHandle> createSocketStreamHandle(const URL&, SocketStreamHandleClient&, PAL::SessionID, const String& credentialPartition);
     42    virtual Ref<SocketStreamHandle> createSocketStreamHandle(const URL&, SocketStreamHandleClient&, PAL::SessionID, const String& credentialPartition, const StorageSessionProvider*);
    4243    virtual ~SocketProvider() { };
    4344};
  • trunk/Source/WebCore/platform/network/NetworkingContext.h

    r239737 r240117  
    2020#pragma once
    2121
    22 #include <wtf/RefCounted.h>
     22#include "StorageSessionProvider.h"
    2323#include <wtf/RetainPtr.h>
    2424#include <wtf/text/WTFString.h>
     
    4242class ResourceRequest;
    4343
    44 class NetworkingContext : public RefCounted<NetworkingContext> {
     44class NetworkingContext : public StorageSessionProvider {
    4545public:
    4646    virtual ~NetworkingContext() = default;
     
    5959    virtual String sourceApplicationIdentifier() const { return emptyString(); }
    6060
    61     virtual NetworkStorageSession* storageSession() const = 0;
    62 
    6361#if PLATFORM(WIN)
    6462    virtual ResourceError blockedError(const ResourceRequest&) const = 0;
  • trunk/Source/WebCore/platform/network/SocketStreamHandleImpl.cpp

    r239427 r240117  
    3030#include "NetworkStorageSession.h"
    3131#include "SocketStreamHandleClient.h"
     32#include "StorageSessionProvider.h"
    3233#include <wtf/Function.h>
    3334
     
    7778}
    7879
    79 static Optional<std::pair<Vector<uint8_t>, bool>> cookieDataForHandshake(const CookieRequestHeaderFieldProxy& headerFieldProxy)
     80static Optional<std::pair<Vector<uint8_t>, bool>> cookieDataForHandshake(const NetworkStorageSession* networkStorageSession, const CookieRequestHeaderFieldProxy& headerFieldProxy)
    8081{
    81     auto networkStorageSession = NetworkStorageSession::storageSession(headerFieldProxy.sessionID);
    8282    if (!networkStorageSession)
    8383        return WTF::nullopt;
     
    104104
    105105    if (headerFieldProxy) {
    106         auto cookieDataFromNetworkSession = cookieDataForHandshake(headerFieldProxy.value());
     106        auto cookieDataFromNetworkSession = cookieDataForHandshake(m_storageSessionProvider ? m_storageSessionProvider->storageSession() : nullptr, *headerFieldProxy);
    107107        if (!cookieDataFromNetworkSession) {
    108108            completionHandler(false, false);
  • trunk/Source/WebCore/platform/network/cf/SocketStreamHandleImpl.h

    r239427 r240117  
    4242
    4343class Credential;
     44class StorageSessionProvider;
    4445class ProtectionSpace;
    4546class SocketStreamHandleClient;
     
    4748class SocketStreamHandleImpl : public SocketStreamHandle {
    4849public:
    49     static Ref<SocketStreamHandleImpl> create(const URL& url, SocketStreamHandleClient& client, PAL::SessionID sessionID, const String& credentialPartition, SourceApplicationAuditToken&& auditData) { return adoptRef(*new SocketStreamHandleImpl(url, client, sessionID, credentialPartition, WTFMove(auditData))); }
     50    static Ref<SocketStreamHandleImpl> create(const URL& url, SocketStreamHandleClient& client, PAL::SessionID sessionID, const String& credentialPartition, SourceApplicationAuditToken&& auditData, const StorageSessionProvider* provider) { return adoptRef(*new SocketStreamHandleImpl(url, client, sessionID, credentialPartition, WTFMove(auditData), provider)); }
    5051
    5152    virtual ~SocketStreamHandleImpl();
     
    5960    bool sendPendingData();
    6061
    61     WEBCORE_EXPORT SocketStreamHandleImpl(const URL&, SocketStreamHandleClient&, PAL::SessionID, const String& credentialPartition, SourceApplicationAuditToken&&);
     62    WEBCORE_EXPORT SocketStreamHandleImpl(const URL&, SocketStreamHandleClient&, PAL::SessionID, const String& credentialPartition, SourceApplicationAuditToken&&, const StorageSessionProvider*);
    6263    void createStreams();
    6364    void scheduleStreams();
     
    104105    String m_credentialPartition;
    105106    SourceApplicationAuditToken m_auditData;
     107    RefPtr<const StorageSessionProvider> m_storageSessionProvider;
    106108
    107109    StreamBuffer<uint8_t, 1024 * 1024> m_buffer;
  • trunk/Source/WebCore/platform/network/cf/SocketStreamHandleImplCFNet.cpp

    r239427 r240117  
    4141#include "SocketStreamError.h"
    4242#include "SocketStreamHandleClient.h"
     43#include "StorageSessionProvider.h"
    4344#include <CFNetwork/CFNetwork.h>
    4445#include <wtf/Condition.h>
     
    9697}
    9798
    98 SocketStreamHandleImpl::SocketStreamHandleImpl(const URL& url, SocketStreamHandleClient& client, PAL::SessionID sessionID, const String& credentialPartition, SourceApplicationAuditToken&& auditData)
     99SocketStreamHandleImpl::SocketStreamHandleImpl(const URL& url, SocketStreamHandleClient& client, PAL::SessionID sessionID, const String& credentialPartition, SourceApplicationAuditToken&& auditData, const StorageSessionProvider* provider)
    99100    : SocketStreamHandle(url, client)
    100101    , m_connectingSubstate(New)
     
    104105    , m_credentialPartition(credentialPartition)
    105106    , m_auditData(WTFMove(auditData))
     107    , m_storageSessionProvider(provider)
    106108{
    107109    LOG(Network, "SocketStreamHandle %p new client %p", this, &m_client);
     
    368370    // Try system credential storage first, matching HTTP behavior (CFNetwork only asks the client for password if it couldn't find it in Keychain).
    369371    Credential storedCredential;
    370     if (auto* storageSession = NetworkStorageSession::storageSession(m_sessionID)) {
     372    if (auto* storageSession = m_storageSessionProvider ? m_storageSessionProvider->storageSession() : nullptr) {
    371373        storedCredential = storageSession->credentialStorage().getFromPersistentStorage(protectionSpace);
    372374        if (storedCredential.isEmpty())
  • trunk/Source/WebCore/platform/network/curl/SocketStreamHandleImpl.h

    r239427 r240117  
    4545
    4646class SocketStreamHandleClient;
     47class StorageSessionProvider;
    4748
    4849class SocketStreamHandleImpl : public SocketStreamHandle {
    4950public:
    50     static Ref<SocketStreamHandleImpl> create(const URL& url, SocketStreamHandleClient& client, PAL::SessionID, const String&, SourceApplicationAuditToken&&) { return adoptRef(*new SocketStreamHandleImpl(url, client)); }
     51    static Ref<SocketStreamHandleImpl> create(const URL& url, SocketStreamHandleClient& client, PAL::SessionID, const String&, SourceApplicationAuditToken&&, const StorageSessionProvider* provider) { return adoptRef(*new SocketStreamHandleImpl(url, client, provider)); }
    5152
    5253    virtual ~SocketStreamHandleImpl();
     
    5758
    5859private:
    59     WEBCORE_EXPORT SocketStreamHandleImpl(const URL&, SocketStreamHandleClient&);
     60    WEBCORE_EXPORT SocketStreamHandleImpl(const URL&, SocketStreamHandleClient&, const StorageSessionProvider*);
    6061
    6162    size_t bufferedAmount() final;
     
    7071    static const size_t kReadBufferSize = 4 * 1024;
    7172
     73    RefPtr<const StorageSessionProvider> m_storageSessionProvider;
    7274    RefPtr<Thread> m_workerThread;
    7375    std::atomic<bool> m_running { true };
  • trunk/Source/WebCore/platform/network/curl/SocketStreamHandleImplCurl.cpp

    r239427 r240117  
    4747namespace WebCore {
    4848
    49 SocketStreamHandleImpl::SocketStreamHandleImpl(const URL& url, SocketStreamHandleClient& client)
     49SocketStreamHandleImpl::SocketStreamHandleImpl(const URL& url, SocketStreamHandleClient& client, const StorageSessionProvider* provider)
    5050    : SocketStreamHandle(url, client)
     51    , m_storageSessionProvider(provider)
    5152{
    5253    LOG(Network, "SocketStreamHandle %p new client %p", this, &m_client);
  • trunk/Source/WebCore/platform/network/soup/SocketStreamHandleImpl.h

    r239427 r240117  
     1
    12/*
    23 * Copyright (C) 2009-2018 Apple Inc. All rights reserved.
     
    4950class SocketStreamError;
    5051class SocketStreamHandleClient;
     52class StorageSessionProvider;
    5153
    5254class SocketStreamHandleImpl final : public SocketStreamHandle {
    5355public:
    54     static Ref<SocketStreamHandleImpl> create(const URL&, SocketStreamHandleClient&, PAL::SessionID, const String&, SourceApplicationAuditToken&&);
     56    static Ref<SocketStreamHandleImpl> create(const URL&, SocketStreamHandleClient&, PAL::SessionID, const String&, SourceApplicationAuditToken&&, const StorageSessionProvider*);
    5557    virtual ~SocketStreamHandleImpl();
    5658
     
    6163    void platformClose() final;
    6264private:
    63     SocketStreamHandleImpl(const URL&, SocketStreamHandleClient&);
     65    SocketStreamHandleImpl(const URL&, SocketStreamHandleClient&, const StorageSessionProvider*);
    6466
    6567    size_t bufferedAmount() final;
     
    7981    void writeReady();
    8082
     83    RefPtr<const StorageSessionProvider> m_storageSessionProvider;
     84   
    8185    GRefPtr<GIOStream> m_stream;
    8286    GRefPtr<GInputStream> m_inputStream;
  • trunk/Source/WebCore/platform/network/soup/SocketStreamHandleImplSoup.cpp

    r239427 r240117  
    4242#include "SocketStreamHandleClient.h"
    4343#include "SoupNetworkSession.h"
     44#include "StorageSessionProvider.h"
    4445#include "URLSoup.h"
    4546#include <gio/gio.h>
     
    8283#endif
    8384
    84 Ref<SocketStreamHandleImpl> SocketStreamHandleImpl::create(const URL& url, SocketStreamHandleClient& client, PAL::SessionID sessionID, const String&, SourceApplicationAuditToken&&)
    85 {
    86     Ref<SocketStreamHandleImpl> socket = adoptRef(*new SocketStreamHandleImpl(url, client));
     85Ref<SocketStreamHandleImpl> SocketStreamHandleImpl::create(const URL& url, SocketStreamHandleClient& client, PAL::SessionID, const String&, SourceApplicationAuditToken&&, const StorageSessionProvider* storageSessionProvider)
     86{
     87    Ref<SocketStreamHandleImpl> socket = adoptRef(*new SocketStreamHandleImpl(url, client, storageSessionProvider));
    8788
    8889#if SOUP_CHECK_VERSION(2, 61, 90)
    89     auto* networkStorageSession = NetworkStorageSession::storageSession(sessionID);
     90    auto* networkStorageSession = storageSessionProvider ? storageSessionProvider->storageSession() : nullptr;
    9091    if (!networkStorageSession)
    9192        return socket;
     
    9798        reinterpret_cast<GAsyncReadyCallback>(connectedCallback), &protectedSocketStreamHandle.leakRef());
    9899#else
    99     UNUSED_PARAM(sessionID);
    100100    unsigned port = url.port() ? url.port().value() : (url.protocolIs("wss") ? 443 : 80);
    101101    GRefPtr<GSocketClient> socketClient = adoptGRef(g_socket_client_new());
     
    112112}
    113113
    114 SocketStreamHandleImpl::SocketStreamHandleImpl(const URL& url, SocketStreamHandleClient& client)
     114SocketStreamHandleImpl::SocketStreamHandleImpl(const URL& url, SocketStreamHandleClient& client, const StorageSessionProvider* provider)
    115115    : SocketStreamHandle(url, client)
     116    , m_storageSessionProvider(provider)
    116117    , m_cancellable(adoptGRef(g_cancellable_new()))
    117118{
  • trunk/Source/WebKit/ChangeLog

    r240100 r240117  
     12019-01-17  Alex Christensen  <achristensen@webkit.org>
     2
     3        Stop using NetworkStorageSession::storageSession in WebCore
     4        https://bugs.webkit.org/show_bug.cgi?id=193529
     5
     6        Reviewed by Tim Horton.
     7
     8        * NetworkProcess/NetworkConnectionToWebProcess.cpp:
     9        (WebKit::NetworkConnectionToWebProcess::createSocketStream):
     10        * NetworkProcess/NetworkProcess.h:
     11        * NetworkProcess/NetworkSocketStream.cpp:
     12        (WebKit::NetworkSocketStream::create):
     13        (WebKit::NetworkSocketStream::NetworkSocketStream):
     14        * NetworkProcess/NetworkSocketStream.h:
     15        * NetworkProcess/NetworkStorageSessionProvider.h: Added.
     16        * WebKit.xcodeproj/project.pbxproj:
     17        * WebProcess/Network/WebSocketProvider.cpp:
     18        (WebKit::WebSocketProvider::createSocketStreamHandle):
     19        * WebProcess/Network/WebSocketProvider.h:
     20        * WebProcess/WebPage/WebCookieJar.cpp:
     21        (WebKit::WebCookieJar::WebCookieJar):
     22        * WebProcess/WebPage/WebCookieJar.h:
     23
    1242019-01-16  Youenn Fablet  <youenn@apple.com>
    225
  • trunk/Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.cpp

    r240089 r240117  
    282282    token = { m_networkProcess->sourceApplicationAuditData() };
    283283#endif
    284     m_networkSocketStreams.set(identifier, NetworkSocketStream::create(WTFMove(url), sessionID, cachePartition, identifier, m_connection, WTFMove(token)));
     284    m_networkSocketStreams.set(identifier, NetworkSocketStream::create(m_networkProcess.get(), WTFMove(url), sessionID, cachePartition, identifier, m_connection, WTFMove(token)));
    285285}
    286286
  • trunk/Source/WebKit/NetworkProcess/NetworkSocketStream.cpp

    r239427 r240117  
    2828
    2929#include "DataReference.h"
     30#include "NetworkStorageSessionProvider.h"
    3031#include "WebSocketStreamMessages.h"
    3132#include <WebCore/CookieRequestHeaderFieldProxy.h>
     
    3536using namespace WebCore;
    3637
    37 Ref<NetworkSocketStream> NetworkSocketStream::create(URL&& url, PAL::SessionID sessionID, const String& credentialPartition, uint64_t identifier, IPC::Connection& connection, SourceApplicationAuditToken&& auditData)
     38Ref<NetworkSocketStream> NetworkSocketStream::create(NetworkProcess& networkProcess, URL&& url, PAL::SessionID sessionID, const String& credentialPartition, uint64_t identifier, IPC::Connection& connection, SourceApplicationAuditToken&& auditData)
    3839{
    39     return adoptRef(*new NetworkSocketStream(WTFMove(url), sessionID, credentialPartition, identifier, connection, WTFMove(auditData)));
     40    return adoptRef(*new NetworkSocketStream(networkProcess, WTFMove(url), sessionID, credentialPartition, identifier, connection, WTFMove(auditData)));
    4041}
    4142
    42 NetworkSocketStream::NetworkSocketStream(URL&& url, PAL::SessionID sessionID, const String& credentialPartition, uint64_t identifier, IPC::Connection& connection, SourceApplicationAuditToken&& auditData)
     43NetworkSocketStream::NetworkSocketStream(NetworkProcess& networkProcess, URL&& url, PAL::SessionID sessionID, const String& credentialPartition, uint64_t identifier, IPC::Connection& connection, SourceApplicationAuditToken&& auditData)
    4344    : m_identifier(identifier)
    4445    , m_connection(connection)
    45     , m_impl(SocketStreamHandleImpl::create(url, *this, sessionID, credentialPartition, WTFMove(auditData)))
     46    , m_impl(SocketStreamHandleImpl::create(url, *this, sessionID, credentialPartition, WTFMove(auditData), NetworkStorageSessionProvider::create(networkProcess, sessionID).ptr()))
    4647{
    4748}
  • trunk/Source/WebKit/NetworkProcess/NetworkSocketStream.h

    r239427 r240117  
    4040namespace WebKit {
    4141
     42class NetworkProcess;
     43
    4244class NetworkSocketStream : public RefCounted<NetworkSocketStream>, public IPC::MessageSender, public IPC::MessageReceiver, public WebCore::SocketStreamHandleClient {
    4345public:
    44     static Ref<NetworkSocketStream> create(URL&&, PAL::SessionID, const String& credentialPartition, uint64_t, IPC::Connection&, WebCore::SourceApplicationAuditToken&&);
     46    static Ref<NetworkSocketStream> create(NetworkProcess&, URL&&, PAL::SessionID, const String& credentialPartition, uint64_t, IPC::Connection&, WebCore::SourceApplicationAuditToken&&);
    4547    ~NetworkSocketStream();
    4648
     
    6365    uint64_t messageSenderDestinationID() final;
    6466
    65     NetworkSocketStream(URL&&, PAL::SessionID, const String& credentialPartition, uint64_t, IPC::Connection&, WebCore::SourceApplicationAuditToken&&);
     67    NetworkSocketStream(NetworkProcess&, URL&&, PAL::SessionID, const String& credentialPartition, uint64_t, IPC::Connection&, WebCore::SourceApplicationAuditToken&&);
    6668
    6769    uint64_t m_identifier;
  • trunk/Source/WebKit/WebKit.xcodeproj/project.pbxproj

    r240100 r240117  
    34463446                5C9E56801DF7F05500C9EE33 /* WKWebsitePolicies.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKWebsitePolicies.cpp; sourceTree = "<group>"; };
    34473447                5C9E56811DF7F05500C9EE33 /* WKWebsitePolicies.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKWebsitePolicies.h; sourceTree = "<group>"; };
     3448                5C9EF2E721F058F9003BDC56 /* NetworkStorageSessionProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NetworkStorageSessionProvider.h; sourceTree = "<group>"; };
    34483449                5CA26D7F217ABBB600F97A35 /* WKSafeBrowsingWarning.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = WKSafeBrowsingWarning.mm; sourceTree = "<group>"; };
    34493450                5CA26D80217ABBB600F97A35 /* WKSafeBrowsingWarning.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKSafeBrowsingWarning.h; sourceTree = "<group>"; };
     
    64406441                                5C0B177E1E7C886700E9123C /* NetworkSocketStream.h */,
    64416442                                5C0B177F1E7C886700E9123C /* NetworkSocketStream.messages.in */,
     6443                                5C9EF2E721F058F9003BDC56 /* NetworkStorageSessionProvider.h */,
    64426444                                462107D71F38DBD300DD7810 /* PingLoad.cpp */,
    64436445                                5CE85B1F1C88E6430070BFCE /* PingLoad.h */,
  • trunk/Source/WebKit/WebProcess/Network/WebSocketProvider.cpp

    r235205 r240117  
    3737using namespace WebCore;
    3838
    39 Ref<SocketStreamHandle> WebSocketProvider::createSocketStreamHandle(const URL& url, SocketStreamHandleClient& client, PAL::SessionID sessionID, const String& credentialPartition)
     39Ref<SocketStreamHandle> WebSocketProvider::createSocketStreamHandle(const URL& url, SocketStreamHandleClient& client, PAL::SessionID sessionID, const String& credentialPartition, const StorageSessionProvider*)
    4040{
    4141    return WebSocketStream::create(url, client, sessionID, credentialPartition);
  • trunk/Source/WebKit/WebProcess/Network/WebSocketProvider.h

    r238771 r240117  
    3333public:
    3434    static Ref<WebSocketProvider> create() { return adoptRef(*new WebSocketProvider); }
    35     Ref<WebCore::SocketStreamHandle> createSocketStreamHandle(const URL&, WebCore::SocketStreamHandleClient&, PAL::SessionID, const String& credentialPartition) final;
     35    Ref<WebCore::SocketStreamHandle> createSocketStreamHandle(const URL&, WebCore::SocketStreamHandleClient&, PAL::SessionID, const String& credentialPartition, const WebCore::StorageSessionProvider*) final;
    3636    virtual ~WebSocketProvider() { }
    3737};
  • trunk/Source/WebKit/WebProcess/WebPage/WebCookieJar.cpp

    r240014 r240117  
    3535#include <WebCore/FrameLoader.h>
    3636#include <WebCore/FrameLoaderClient.h>
     37#include <WebCore/StorageSessionProvider.h>
    3738
    3839namespace WebKit {
     40
     41class WebStorageSessionProvider : public WebCore::StorageSessionProvider {
     42    // NetworkStorageSessions are accessed only in the NetworkProcess.
     43    WebCore::NetworkStorageSession* storageSession() const final { return nullptr; }
     44};
     45
     46WebCookieJar::WebCookieJar()
     47    : WebCore::CookieJar(adoptRef(*new WebStorageSessionProvider)) { }
    3948
    4049String WebCookieJar::cookies(WebCore::Document& document, const URL& url) const
  • trunk/Source/WebKit/WebProcess/WebPage/WebCookieJar.h

    r240014 r240117  
    4040    bool getRawCookies(const WebCore::Document&, const URL&, Vector<WebCore::Cookie>&) const final;
    4141    void deleteCookie(const WebCore::Document&, const URL&, const String& cookieName) final;
     42private:
     43    WebCookieJar();
    4244};
    4345
  • trunk/Source/WebKitLegacy/ChangeLog

    r239634 r240117  
     12019-01-17  Alex Christensen  <achristensen@webkit.org>
     2
     3        Stop using NetworkStorageSession::storageSession in WebCore
     4        https://bugs.webkit.org/show_bug.cgi?id=193529
     5
     6        Reviewed by Tim Horton.
     7
     8        * WebCoreSupport/PageStorageSessionProvider.h: Added.
     9        * WebKitLegacy.xcodeproj/project.pbxproj:
     10
    1112019-01-04  Youenn Fablet  <youenn@apple.com>
    212
  • trunk/Source/WebKitLegacy/WebKitLegacy.xcodeproj/project.pbxproj

    r238815 r240117  
    148148                598AD92A1201CF3B00ABAE4E /* WebDeviceOrientationProviderMockInternal.h in Headers */ = {isa = PBXBuildFile; fileRef = 598AD9291201CF3B00ABAE4E /* WebDeviceOrientationProviderMockInternal.h */; };
    149149                598ADA461202275000ABAE4E /* WebDeviceOrientationProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = 598ADA451202275000ABAE4E /* WebDeviceOrientationProvider.h */; settings = {ATTRIBUTES = (Private, ); }; };
     150                5C9EF2F521F061BE003BDC56 /* PageStorageSessionProvider.h in Headers */ = {isa = PBXBuildFile; fileRef = 5C9EF2F421F061BE003BDC56 /* PageStorageSessionProvider.h */; };
    150151                5CE44F4A206D70EA003EFD01 /* PingHandle.h in Headers */ = {isa = PBXBuildFile; fileRef = 5CE44F49206D70E9003EFD01 /* PingHandle.h */; };
    151152                5D7BF8140C2A1D90008CE06D /* WebInspector.h in Headers */ = {isa = PBXBuildFile; fileRef = 5D7BF8120C2A1D90008CE06D /* WebInspector.h */; settings = {ATTRIBUTES = (Private, ); }; };
     
    987988                598AD9291201CF3B00ABAE4E /* WebDeviceOrientationProviderMockInternal.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebDeviceOrientationProviderMockInternal.h; sourceTree = "<group>"; };
    988989                598ADA451202275000ABAE4E /* WebDeviceOrientationProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebDeviceOrientationProvider.h; sourceTree = "<group>"; };
     990                5C9EF2F421F061BE003BDC56 /* PageStorageSessionProvider.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PageStorageSessionProvider.h; path = WebCoreSupport/PageStorageSessionProvider.h; sourceTree = SOURCE_ROOT; };
    989991                5CE44F49206D70E9003EFD01 /* PingHandle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PingHandle.h; path = WebCoreSupport/PingHandle.h; sourceTree = SOURCE_ROOT; };
    990992                5D7BF8120C2A1D90008CE06D /* WebInspector.h */ = {isa = PBXFileReference; fileEncoding = 30; lastKnownFileType = sourcecode.c.h; path = WebInspector.h; sourceTree = "<group>"; };
     
    25552557                                B82958D1132707D0000D0E79 /* CorrectionPanel.h */,
    25562558                                B82958D2132707D0000D0E79 /* CorrectionPanel.mm */,
     2559                                5C9EF2F421F061BE003BDC56 /* PageStorageSessionProvider.h */,
    25572560                                5CE44F49206D70E9003EFD01 /* PingHandle.h */,
    25582561                                7C01CB81173435C900C5D807 /* PopupMenuMac.h */,
     
    29352938                                93D4379B1D57ABEF00AB85EA /* ObjCEventListener.h in Headers */,
    29362939                                93D4379D1D57ABEF00AB85EA /* ObjCNodeFilterCondition.h in Headers */,
     2940                                5C9EF2F521F061BE003BDC56 /* PageStorageSessionProvider.h in Headers */,
    29372941                                5CE44F4A206D70EA003EFD01 /* PingHandle.h in Headers */,
    29382942                                A10C1D5F1820300E0036883A /* PopupMenuIOS.h in Headers */,
  • trunk/Source/WebKitLegacy/mac/ChangeLog

    r240031 r240117  
     12019-01-17  Alex Christensen  <achristensen@webkit.org>
     2
     3        Stop using NetworkStorageSession::storageSession in WebCore
     4        https://bugs.webkit.org/show_bug.cgi?id=193529
     5
     6        Reviewed by Tim Horton.
     7
     8        * Misc/WebCache.mm:
     9        (+[WebCache addImageToCache:forURL:forFrame:]):
     10        * WebView/WebView.mm:
     11        (-[WebView _commonInitializationWithFrameName:groupName:]):
     12        (-[WebView initSimpleHTMLDocumentWithStyle:frame:preferences:groupName:]):
     13
    1142019-01-15  Alex Christensen  <achristensen@webkit.org>
    215
  • trunk/Source/WebKitLegacy/mac/Misc/WebCache.mm

    r240031 r240117  
    3939#import <WebCore/MemoryCache.h>
    4040#import <WebCore/NetworkStorageSession.h>
     41#import <WebCore/StorageSessionProvider.h>
    4142#import <wtf/MainThread.h>
    4243#import <wtf/RunLoop.h>
     
    5152#endif
    5253
     54class DefaultStorageSessionProvider : public WebCore::StorageSessionProvider {
     55    WebCore::NetworkStorageSession* storageSession() const final
     56    {
     57        return &WebCore::NetworkStorageSession::defaultStorageSession();
     58    }
     59};
     60
    5361@implementation WebCache
    5462
     
    166174        return false;
    167175
    168     return WebCore::MemoryCache::singleton().addImageToCache(RetainPtr<CGImageRef>(image), url, frame ? core(frame)->document()->domainForCachePartition() : emptyString(), PAL::SessionID::defaultSessionID(), WebCore::CookieJar::create().ptr());
     176    auto provider = adoptRef(*new DefaultStorageSessionProvider);
     177    return WebCore::MemoryCache::singleton().addImageToCache(RetainPtr<CGImageRef>(image), url, frame ? core(frame)->document()->domainForCachePartition() : emptyString(), PAL::SessionID::defaultSessionID(), WebCore::CookieJar::create(WTFMove(provider)).ptr());
    169178}
    170179
  • trunk/Source/WebKitLegacy/mac/WebView/WebView.mm

    r240014 r240117  
    3838#import "DOMNodeInternal.h"
    3939#import "DOMRangeInternal.h"
     40#import "PageStorageSessionProvider.h"
    4041#import "StorageThread.h"
    4142#import "WebAlternativeTextClient.h"
     
    14411442    _private->group->addWebView(self);
    14421443
     1444    auto storageProvider = PageStorageSessionProvider::create();
    14431445    PageConfiguration pageConfiguration(
    14441446        makeUniqueRef<WebEditorClient>(self),
     
    14471449        WebCore::CacheStorageProvider::create(),
    14481450        BackForwardList::create(self),
    1449         CookieJar::create()
     1451        CookieJar::create(storageProvider.copyRef())
    14501452    );
    14511453#if !PLATFORM(IOS_FAMILY)
     
    14781480    pageConfiguration.visitedLinkStore = &_private->group->visitedLinkStore();
    14791481    _private->page = new Page(WTFMove(pageConfiguration));
     1482    storageProvider->setPage(*_private->page);
    14801483
    14811484    _private->page->setGroupName(groupName);
     
    17071710    _private->group->addWebView(self);
    17081711
     1712    auto storageProvider = PageStorageSessionProvider::create();
    17091713    PageConfiguration pageConfiguration(
    17101714        makeUniqueRef<WebEditorClient>(self),
     
    17131717        WebCore::CacheStorageProvider::create(),
    17141718        BackForwardList::create(self),
    1715         CookieJar::create()
     1719        CookieJar::create(storageProvider.copyRef())
    17161720    );
    17171721    pageConfiguration.chromeClient = new WebChromeClientIOS(self);
     
    17351739
    17361740    _private->page = new Page(WTFMove(pageConfiguration));
     1741    storageProvider->setPage(*_private->page);
    17371742   
    17381743    [self setSmartInsertDeleteEnabled:YES];
  • trunk/Source/WebKitLegacy/win/ChangeLog

    r240031 r240117  
     12019-01-17  Alex Christensen  <achristensen@webkit.org>
     2
     3        Stop using NetworkStorageSession::storageSession in WebCore
     4        https://bugs.webkit.org/show_bug.cgi?id=193529
     5
     6        Reviewed by Tim Horton.
     7
     8        * WebView.cpp:
     9        (WebView::initWithFrame):
     10
    1112019-01-15  Alex Christensen  <achristensen@webkit.org>
    212
  • trunk/Source/WebKitLegacy/win/WebView.cpp

    r240028 r240117  
    3333#include "FullscreenVideoController.h"
    3434#include "MarshallingHelpers.h"
     35#include "PageStorageSessionProvider.h"
    3536#include "PluginDatabase.h"
    3637#include "PluginView.h"
     
    31073108    m_inspectorClient = new WebInspectorClient(this);
    31083109
     3110    auto storageProvider = PageStorageSessionProvider::create();
    31093111    PageConfiguration configuration(
    31103112        makeUniqueRef<WebEditorClient>(this),
     
    31133115        WebCore::CacheStorageProvider::create(),
    31143116        BackForwardList::create(),
    3115         CookieJar::create()
     3117        CookieJar::create(storageProvider.copyRef())
    31163118    );
    31173119    configuration.chromeClient = new WebChromeClient(this);
     
    31293131
    31303132    m_page = new Page(WTFMove(configuration));
     3133    storageProvider->setPage(*m_page);
    31313134    provideGeolocationTo(m_page, *new WebGeolocationClient(this));
    31323135
Note: See TracChangeset for help on using the changeset viewer.