Diff
Modified: trunk/Source/WebKit/ChangeLog (240784 => 240785)
--- trunk/Source/WebKit/ChangeLog 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/ChangeLog 2019-01-31 15:04:30 UTC (rev 240785)
@@ -1,3 +1,50 @@
+2019-01-31 Michael Catanzaro <[email protected]>
+
+ [SOUP] Move cookiePersistentStoragePath and cookiePersistentStorageType from NetworkProcess to NetworkSession
+ https://bugs.webkit.org/show_bug.cgi?id=194075
+
+ Reviewed by Alex Christensen.
+
+ Move cookiePersistentStoragePath and cookiePersistentStorageType from NetworkProcess to
+ NetworkSession to reduce globals. This removes two of the six soup-specific variables in
+ NetworkProcessCreationParameters
+
+ * NetworkProcess/Cookies/WebCookieManager.h:
+ * NetworkProcess/Cookies/WebCookieManager.messages.in:
+ * NetworkProcess/Cookies/soup/WebCookieManagerSoup.cpp:
+ (WebKit::WebCookieManager::setCookiePersistentStorage):
+ * NetworkProcess/NetworkProcessCreationParameters.cpp:
+ (WebKit::NetworkProcessCreationParameters::encode const):
+ (WebKit::NetworkProcessCreationParameters::decode):
+ * NetworkProcess/NetworkProcessCreationParameters.h:
+ * NetworkProcess/NetworkSessionCreationParameters.cpp:
+ (WebKit::NetworkSessionCreationParameters::privateSessionParameters):
+ (WebKit::NetworkSessionCreationParameters::encode const):
+ (WebKit::NetworkSessionCreationParameters::decode):
+ * NetworkProcess/NetworkSessionCreationParameters.h:
+ * NetworkProcess/soup/NetworkProcessSoup.cpp:
+ (WebKit::NetworkProcess::platformInitializeNetworkProcess):
+ * NetworkProcess/soup/NetworkSessionSoup.cpp:
+ (WebKit::NetworkSessionSoup::NetworkSessionSoup):
+ * SourcesGTK.txt:
+ * SourcesWPE.txt:
+ * UIProcess/API/glib/WebKitCookieManager.cpp:
+ (webkit_cookie_manager_set_persistent_storage):
+ * UIProcess/WebCookieManagerProxy.cpp:
+ (WebKit::WebCookieManagerProxy::WebCookieManagerProxy):
+ * UIProcess/WebCookieManagerProxy.h:
+ * UIProcess/WebsiteData/WebsiteDataStore.cpp:
+ (WebKit::WebsiteDataStore::parameters):
+ * UIProcess/WebsiteData/WebsiteDataStore.h:
+ * UIProcess/WebsiteData/curl/WebsiteDataStoreCurl.cpp:
+ (WebKit::WebsiteDataStore::platformSetNetworkParameters):
+ (WebKit::WebsiteDataStore::platformSetParameters): Deleted.
+ * UIProcess/soup/WebCookieManagerProxySoup.cpp:
+ (WebKit::WebCookieManagerProxy::setCookiePersistentStorage):
+ (WebKit::WebCookieManagerProxy::getCookiePersistentStorage const):
+ * UIProcess/soup/WebProcessPoolSoup.cpp:
+ (WebKit::WebProcessPool::platformInitializeNetworkProcess):
+
2019-01-31 Ryosuke Niwa <[email protected]>
iOS: Crash in InteractiveUpdateHandler set by ViewGestureController::beginSwipeGesture
Modified: trunk/Source/WebKit/NetworkProcess/Cookies/WebCookieManager.h (240784 => 240785)
--- trunk/Source/WebKit/NetworkProcess/Cookies/WebCookieManager.h 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/NetworkProcess/Cookies/WebCookieManager.h 2019-01-31 15:04:30 UTC (rev 240785)
@@ -58,7 +58,7 @@
void setHTTPCookieAcceptPolicy(HTTPCookieAcceptPolicy, OptionalCallbackID);
#if USE(SOUP)
- void setCookiePersistentStorage(const String& storagePath, uint32_t storageType);
+ void setCookiePersistentStorage(PAL::SessionID, const String& storagePath, uint32_t storageType);
#endif
void notifyCookiesDidChange(PAL::SessionID);
Modified: trunk/Source/WebKit/NetworkProcess/Cookies/WebCookieManager.messages.in (240784 => 240785)
--- trunk/Source/WebKit/NetworkProcess/Cookies/WebCookieManager.messages.in 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/NetworkProcess/Cookies/WebCookieManager.messages.in 2019-01-31 15:04:30 UTC (rev 240785)
@@ -42,6 +42,6 @@
void StopObservingCookieChanges(PAL::SessionID sessionID)
#if USE(SOUP)
- SetCookiePersistentStorage(String storagePath, uint32_t storageType)
+ SetCookiePersistentStorage(PAL::SessionID sessionID, String storagePath, uint32_t storageType)
#endif
}
Modified: trunk/Source/WebKit/NetworkProcess/Cookies/soup/WebCookieManagerSoup.cpp (240784 => 240785)
--- trunk/Source/WebKit/NetworkProcess/Cookies/soup/WebCookieManagerSoup.cpp 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/NetworkProcess/Cookies/soup/WebCookieManagerSoup.cpp 2019-01-31 15:04:30 UTC (rev 240785)
@@ -71,7 +71,7 @@
return HTTPCookieAcceptPolicyOnlyFromMainDocumentDomain;
}
-void WebCookieManager::setCookiePersistentStorage(const String& storagePath, uint32_t storageType)
+void WebCookieManager::setCookiePersistentStorage(PAL::SessionID sessionID, const String& storagePath, uint32_t storageType)
{
GRefPtr<SoupCookieJar> jar;
switch (storageType) {
@@ -85,9 +85,10 @@
ASSERT_NOT_REACHED();
}
- auto& storageSession = m_process.defaultStorageSession();
- soup_cookie_jar_set_accept_policy(jar.get(), soup_cookie_jar_get_accept_policy(storageSession.cookieStorage()));
- storageSession.setCookieStorage(jar.get());
+ if (auto* storageSession = m_process.storageSession(sessionID)) {
+ soup_cookie_jar_set_accept_policy(jar.get(), soup_cookie_jar_get_accept_policy(storageSession->cookieStorage()));
+ storageSession->setCookieStorage(jar.get());
+ }
}
} // namespace WebKit
Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp (240784 => 240785)
--- trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp 2019-01-31 15:04:30 UTC (rev 240785)
@@ -72,8 +72,6 @@
#endif
encoder << defaultDataStoreParameters;
#if USE(SOUP)
- encoder << cookiePersistentStoragePath;
- encoder << cookiePersistentStorageType;
encoder.encodeEnum(cookieAcceptPolicy);
encoder << ignoreTLSErrors;
encoder << languages;
@@ -172,10 +170,6 @@
result.defaultDataStoreParameters = WTFMove(*defaultDataStoreParameters);
#if USE(SOUP)
- if (!decoder.decode(result.cookiePersistentStoragePath))
- return false;
- if (!decoder.decode(result.cookiePersistentStorageType))
- return false;
if (!decoder.decodeEnum(result.cookieAcceptPolicy))
return false;
if (!decoder.decode(result.ignoreTLSErrors))
Modified: trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h (240784 => 240785)
--- trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h 2019-01-31 15:04:30 UTC (rev 240785)
@@ -87,8 +87,6 @@
WebsiteDataStoreParameters defaultDataStoreParameters;
#if USE(SOUP)
- String cookiePersistentStoragePath;
- uint32_t cookiePersistentStorageType { 0 };
HTTPCookieAcceptPolicy cookieAcceptPolicy { HTTPCookieAcceptPolicyAlways };
bool ignoreTLSErrors { false };
Vector<String> languages;
Modified: trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp (240784 => 240785)
--- trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.cpp 2019-01-31 15:04:30 UTC (rev 240785)
@@ -44,6 +44,9 @@
#if PLATFORM(COCOA)
, { }, { }, { }, false, { }, { }, { }
#endif
+#if USE(SOUP)
+ , { }, 0
+#endif
#if USE(CURL)
, { }, { }
#endif
@@ -65,6 +68,10 @@
encoder << httpProxy;
encoder << httpsProxy;
#endif
+#if USE(SOUP)
+ encoder << cookiePersistentStoragePath;
+ encoder << cookiePersistentStorageType;
+#endif
#if USE(CURL)
encoder << cookiePersistentStorageFile;
encoder << proxySettings;
@@ -125,7 +132,19 @@
if (!httpsProxy)
return WTF::nullopt;
#endif
-
+
+#if USE(SOUP)
+ Optional<String> cookiePersistentStoragePath;
+ decoder >> cookiePersistentStoragePath;
+ if (!cookiePersistentStoragePath)
+ return WTF::nullopt;
+
+ Optional<uint32_t> cookiePersistentStorageType;
+ decoder >> cookiePersistentStorageType;
+ if (!cookiePersistentStorageType)
+ return WTF::nullopt;
+#endif
+
#if USE(CURL)
Optional<String> cookiePersistentStorageFile;
decoder >> cookiePersistentStorageFile;
@@ -166,6 +185,10 @@
, WTFMove(*httpProxy)
, WTFMove(*httpsProxy)
#endif
+#if USE(SOUP)
+ , WTFMove(*cookiePersistentStoragePath)
+ , WTFMove(*cookiePersistentStorageType)
+#endif
#if USE(CURL)
, WTFMove(*cookiePersistentStorageFile)
, WTFMove(*proxySettings)
Modified: trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.h (240784 => 240785)
--- trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.h 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/NetworkProcess/NetworkSessionCreationParameters.h 2019-01-31 15:04:30 UTC (rev 240785)
@@ -66,6 +66,10 @@
URL httpProxy;
URL httpsProxy;
#endif
+#if USE(SOUP)
+ String cookiePersistentStoragePath;
+ uint32_t cookiePersistentStorageType { 0 };
+#endif
#if USE(CURL)
String cookiePersistentStorageFile;
WebCore::CurlProxySettings proxySettings;
Modified: trunk/Source/WebKit/NetworkProcess/soup/NetworkProcessSoup.cpp (240784 => 240785)
--- trunk/Source/WebKit/NetworkProcess/soup/NetworkProcessSoup.cpp 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/NetworkProcess/soup/NetworkProcessSoup.cpp 2019-01-31 15:04:30 UTC (rev 240785)
@@ -120,10 +120,6 @@
m_cache = NetworkCache::Cache::open(*this, m_diskCacheDirectory, cacheOptions);
- if (!parameters.cookiePersistentStoragePath.isEmpty()) {
- supplement<WebCookieManager>()->setCookiePersistentStorage(parameters.cookiePersistentStoragePath,
- parameters.cookiePersistentStorageType);
- }
supplement<WebCookieManager>()->setHTTPCookieAcceptPolicy(parameters.cookieAcceptPolicy, OptionalCallbackID());
if (!parameters.languages.isEmpty())
Modified: trunk/Source/WebKit/NetworkProcess/soup/NetworkSessionSoup.cpp (240784 => 240785)
--- trunk/Source/WebKit/NetworkProcess/soup/NetworkSessionSoup.cpp 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/NetworkProcess/soup/NetworkSessionSoup.cpp 2019-01-31 15:04:30 UTC (rev 240785)
@@ -42,6 +42,9 @@
networkStorageSession().setCookieObserverHandler([this] {
this->networkProcess().supplement<WebCookieManager>()->notifyCookiesDidChange(m_sessionID);
});
+
+ if (!parameters.cookiePersistentStoragePath.isEmpty())
+ this->networkProcess().supplement<WebCookieManager>()->setCookiePersistentStorage(m_sessionID, parameters.cookiePersistentStoragePath, parameters.cookiePersistentStorageType);
}
NetworkSessionSoup::~NetworkSessionSoup()
Modified: trunk/Source/WebKit/SourcesGTK.txt (240784 => 240785)
--- trunk/Source/WebKit/SourcesGTK.txt 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/SourcesGTK.txt 2019-01-31 15:04:30 UTC (rev 240785)
@@ -218,6 +218,7 @@
UIProcess/WebStorage/StorageManager.cpp
+UIProcess/WebsiteData/soup/WebsiteDataStoreSoup.cpp
UIProcess/WebsiteData/unix/WebsiteDataStoreUnix.cpp
UIProcess/cairo/BackingStoreCairo.cpp @no-unify
Modified: trunk/Source/WebKit/SourcesWPE.txt (240784 => 240785)
--- trunk/Source/WebKit/SourcesWPE.txt 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/SourcesWPE.txt 2019-01-31 15:04:30 UTC (rev 240785)
@@ -191,6 +191,7 @@
UIProcess/WebStorage/StorageManager.cpp
+UIProcess/WebsiteData/soup/WebsiteDataStoreSoup.cpp
UIProcess/WebsiteData/unix/WebsiteDataStoreUnix.cpp
UIProcess/gstreamer/InstallMissingMediaPluginsPermissionRequest.cpp
Modified: trunk/Source/WebKit/UIProcess/API/glib/WebKitCookieManager.cpp (240784 => 240785)
--- trunk/Source/WebKit/UIProcess/API/glib/WebKitCookieManager.cpp 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/UIProcess/API/glib/WebKitCookieManager.cpp 2019-01-31 15:04:30 UTC (rev 240785)
@@ -166,8 +166,12 @@
g_return_if_fail(filename);
g_return_if_fail(!webkit_website_data_manager_is_ephemeral(manager->priv->dataManager));
+ auto sessionID = webkitWebsiteDataManagerGetDataStore(manager->priv->dataManager).websiteDataStore().sessionID();
+ if (sessionID.isEphemeral())
+ return;
+
for (auto* processPool : webkitWebsiteDataManagerGetProcessPools(manager->priv->dataManager))
- processPool->supplement<WebCookieManagerProxy>()->setCookiePersistentStorage(String::fromUTF8(filename), toSoupCookiePersistentStorageType(storage));
+ processPool->supplement<WebCookieManagerProxy>()->setCookiePersistentStorage(sessionID, String::fromUTF8(filename), toSoupCookiePersistentStorageType(storage));
}
/**
Modified: trunk/Source/WebKit/UIProcess/WebCookieManagerProxy.cpp (240784 => 240785)
--- trunk/Source/WebKit/UIProcess/WebCookieManagerProxy.cpp 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/UIProcess/WebCookieManagerProxy.cpp 2019-01-31 15:04:30 UTC (rev 240785)
@@ -51,9 +51,6 @@
WebCookieManagerProxy::WebCookieManagerProxy(WebProcessPool* processPool)
: WebContextSupplement(processPool)
-#if USE(SOUP)
- , m_cookiePersistentStorageType(SoupCookiePersistentStorageSQLite)
-#endif
{
WebContextSupplement::processPool()->addMessageReceiver(Messages::WebCookieManagerProxy::messageReceiverName(), *this);
}
Modified: trunk/Source/WebKit/UIProcess/WebCookieManagerProxy.h (240784 => 240785)
--- trunk/Source/WebKit/UIProcess/WebCookieManagerProxy.h 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/UIProcess/WebCookieManagerProxy.h 2019-01-31 15:04:30 UTC (rev 240785)
@@ -32,6 +32,7 @@
#include "WebCookieManagerProxyClient.h"
#include <pal/SessionID.h>
#include <wtf/Forward.h>
+#include <wtf/HashMap.h>
#include <wtf/RefPtr.h>
#if USE(SOUP)
@@ -97,8 +98,8 @@
void unregisterObserver(PAL::SessionID, Observer&);
#if USE(SOUP)
- void setCookiePersistentStorage(const String& storagePath, uint32_t storageType);
- void getCookiePersistentStorage(String& storagePath, uint32_t& storageType) const;
+ void setCookiePersistentStorage(PAL::SessionID, const String& storagePath, uint32_t storageType);
+ void getCookiePersistentStorage(PAL::SessionID, String& storagePath, uint32_t& storageType) const;
#endif
using API::Object::ref;
@@ -139,8 +140,8 @@
WebCookieManagerProxyClient m_client;
#if USE(SOUP)
- String m_cookiePersistentStoragePath;
- SoupCookiePersistentStorageType m_cookiePersistentStorageType;
+ using CookiePersistentStorageMap = HashMap<PAL::SessionID, std::pair<String, SoupCookiePersistentStorageType>>;
+ CookiePersistentStorageMap m_cookiePersistentStorageMap;
#endif
};
Modified: trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp (240784 => 240785)
--- trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.cpp 2019-01-31 15:04:30 UTC (rev 240785)
@@ -36,7 +36,6 @@
#include "ShouldGrandfatherStatistics.h"
#include "StorageAccessStatus.h"
#include "StorageManager.h"
-#include "WebCookieManagerProxy.h"
#include "WebProcessMessages.h"
#include "WebProcessPool.h"
#include "WebResourceLoadStatisticsStore.h"
@@ -2061,7 +2060,6 @@
#if !PLATFORM(COCOA)
WebsiteDataStoreParameters WebsiteDataStore::parameters()
{
- // FIXME: Implement cookies.
WebsiteDataStoreParameters parameters;
parameters.networkSessionParameters.sessionID = m_sessionID;
@@ -2079,9 +2077,7 @@
SandboxExtension::createHandleForReadWriteDirectory(parameters.serviceWorkerRegistrationDirectory, parameters.serviceWorkerRegistrationDirectoryExtensionHandle);
#endif
-#if USE(CURL)
- platformSetParameters(parameters);
-#endif
+ platformSetNetworkParameters(parameters);
return parameters;
}
Modified: trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h (240784 => 240785)
--- trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/UIProcess/WebsiteData/WebsiteDataStore.h 2019-01-31 15:04:30 UTC (rev 240785)
@@ -204,7 +204,6 @@
#endif
#if USE(CURL)
- void platformSetParameters(WebsiteDataStoreParameters&);
void setNetworkProxySettings(WebCore::CurlProxySettings&&);
const WebCore::CurlProxySettings& networkProxySettings() const { return m_proxySettings; }
#endif
@@ -249,6 +248,10 @@
void platformDestroy();
static void platformRemoveRecentSearches(WallTime);
+#if USE(CURL) || USE(SOUP)
+ void platformSetNetworkParameters(WebsiteDataStoreParameters&);
+#endif
+
HashSet<RefPtr<WebProcessPool>> processPools(size_t count = std::numeric_limits<size_t>::max(), bool ensureAPoolExists = true) const;
#if ENABLE(NETSCAPE_PLUGIN_API)
Modified: trunk/Source/WebKit/UIProcess/WebsiteData/curl/WebsiteDataStoreCurl.cpp (240784 => 240785)
--- trunk/Source/WebKit/UIProcess/WebsiteData/curl/WebsiteDataStoreCurl.cpp 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/UIProcess/WebsiteData/curl/WebsiteDataStoreCurl.cpp 2019-01-31 15:04:30 UTC (rev 240785)
@@ -32,7 +32,7 @@
namespace WebKit {
-void WebsiteDataStore::platformSetParameters(WebsiteDataStoreParameters& parameters)
+void WebsiteDataStore::platformSetNetworkParameters(WebsiteDataStoreParameters& parameters)
{
parameters.networkSessionParameters.proxySettings = m_proxySettings;
}
Copied: trunk/Source/WebKit/UIProcess/WebsiteData/soup/WebsiteDataStoreSoup.cpp (from rev 240781, trunk/Source/WebKit/UIProcess/WebsiteData/curl/WebsiteDataStoreCurl.cpp) (0 => 240785)
--- trunk/Source/WebKit/UIProcess/WebsiteData/soup/WebsiteDataStoreSoup.cpp (rev 0)
+++ trunk/Source/WebKit/UIProcess/WebsiteData/soup/WebsiteDataStoreSoup.cpp 2019-01-31 15:04:30 UTC (rev 240785)
@@ -0,0 +1,44 @@
+/*
+ * Copyright (C) 2019 Igalia S.L.
+ * Copyright (C) 2019 Metrological Group B.V.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions
+ * are met:
+ * 1. Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * 2. Redistributions in binary form must reproduce the above copyright
+ * notice, this list of conditions and the following disclaimer in the
+ * documentation and/or other materials provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
+ * THE POSSIBILITY OF SUCH DAMAGE.
+ */
+
+#include "config.h"
+#include "WebsiteDataStore.h"
+
+#include "WebCookieManagerProxy.h"
+#include "WebProcessPool.h"
+#include "WebsiteDataStoreParameters.h"
+
+namespace WebKit {
+
+void WebsiteDataStore::platformSetNetworkParameters(WebsiteDataStoreParameters& parameters)
+{
+ auto& networkSessionParameters = parameters.networkSessionParameters;
+
+ if (auto* processPool = processPoolForCookieStorageOperations())
+ processPool->supplement<WebCookieManagerProxy>()->getCookiePersistentStorage(m_sessionID, networkSessionParameters.cookiePersistentStoragePath, networkSessionParameters.cookiePersistentStorageType);
+}
+
+}
Modified: trunk/Source/WebKit/UIProcess/soup/WebCookieManagerProxySoup.cpp (240784 => 240785)
--- trunk/Source/WebKit/UIProcess/soup/WebCookieManagerProxySoup.cpp 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/UIProcess/soup/WebCookieManagerProxySoup.cpp 2019-01-31 15:04:30 UTC (rev 240785)
@@ -31,17 +31,17 @@
namespace WebKit {
-void WebCookieManagerProxy::setCookiePersistentStorage(const String& storagePath, uint32_t storageType)
+void WebCookieManagerProxy::setCookiePersistentStorage(PAL::SessionID sessionID, const String& storagePath, uint32_t storageType)
{
- m_cookiePersistentStoragePath = storagePath;
- m_cookiePersistentStorageType = static_cast<SoupCookiePersistentStorageType>(storageType);
- processPool()->sendToNetworkingProcess(Messages::WebCookieManager::SetCookiePersistentStorage(storagePath, storageType));
+ m_cookiePersistentStorageMap.set(sessionID, std::make_pair(storagePath, static_cast<SoupCookiePersistentStorageType>(storageType)));
+ processPool()->sendToNetworkingProcess(Messages::WebCookieManager::SetCookiePersistentStorage(sessionID, storagePath, storageType));
}
-void WebCookieManagerProxy::getCookiePersistentStorage(String& storagePath, uint32_t& storageType) const
+void WebCookieManagerProxy::getCookiePersistentStorage(PAL::SessionID sessionID, String& storagePath, uint32_t& storageType) const
{
- storagePath = m_cookiePersistentStoragePath;
- storageType = static_cast<uint32_t>(m_cookiePersistentStorageType);
+ auto pair = m_cookiePersistentStorageMap.get(sessionID);
+ storagePath = pair.first;
+ storageType = static_cast<uint32_t>(pair.second);
}
}
Modified: trunk/Source/WebKit/UIProcess/soup/WebProcessPoolSoup.cpp (240784 => 240785)
--- trunk/Source/WebKit/UIProcess/soup/WebProcessPoolSoup.cpp 2019-01-31 14:54:52 UTC (rev 240784)
+++ trunk/Source/WebKit/UIProcess/soup/WebProcessPoolSoup.cpp 2019-01-31 15:04:30 UTC (rev 240785)
@@ -38,7 +38,6 @@
void WebProcessPool::platformInitializeNetworkProcess(NetworkProcessCreationParameters& parameters)
{
- supplement<WebCookieManagerProxy>()->getCookiePersistentStorage(parameters.cookiePersistentStoragePath, parameters.cookiePersistentStorageType);
parameters.cookieAcceptPolicy = m_initialHTTPCookieAcceptPolicy;
parameters.ignoreTLSErrors = m_ignoreTLSErrors;
parameters.languages = userPreferredLanguages();