Modified: trunk/Source/WebKit/ChangeLog (241012 => 241013)
--- trunk/Source/WebKit/ChangeLog 2019-02-06 07:54:43 UTC (rev 241012)
+++ trunk/Source/WebKit/ChangeLog 2019-02-06 08:05:57 UTC (rev 241013)
@@ -1,3 +1,16 @@
+2019-02-06 Michael Catanzaro <[email protected]>
+
+ REGRESSION(r240785): [SOUP] Broke cookie persistent storage
+ https://bugs.webkit.org/show_bug.cgi?id=194209
+
+ Reviewed by Carlos Garcia Campos.
+
+ I missed a spot when moving the persistent storage parameters from NetworkProcess to
+ NetworkSession. They have to be initialized separately for the default session.
+
+ * UIProcess/soup/WebProcessPoolSoup.cpp:
+ (WebKit::WebProcessPool::platformInitializeNetworkProcess):
+
2019-02-05 Alex Christensen <[email protected]>
Stop using blobRegistry in NetworkProcess
Modified: trunk/Source/WebKit/UIProcess/soup/WebProcessPoolSoup.cpp (241012 => 241013)
--- trunk/Source/WebKit/UIProcess/soup/WebProcessPoolSoup.cpp 2019-02-06 07:54:43 UTC (rev 241012)
+++ trunk/Source/WebKit/UIProcess/soup/WebProcessPoolSoup.cpp 2019-02-06 08:05:57 UTC (rev 241013)
@@ -38,6 +38,9 @@
void WebProcessPool::platformInitializeNetworkProcess(NetworkProcessCreationParameters& parameters)
{
+ NetworkSessionCreationParameters& defaultSessionParameters = parameters.defaultDataStoreParameters.networkSessionParameters;
+ supplement<WebCookieManagerProxy>()->getCookiePersistentStorage(defaultSessionParameters.sessionID, defaultSessionParameters.cookiePersistentStoragePath, defaultSessionParameters.cookiePersistentStorageType);
+
parameters.cookieAcceptPolicy = m_initialHTTPCookieAcceptPolicy;
parameters.ignoreTLSErrors = m_ignoreTLSErrors;
parameters.languages = userPreferredLanguages();
Modified: trunk/Tools/ChangeLog (241012 => 241013)
--- trunk/Tools/ChangeLog 2019-02-06 07:54:43 UTC (rev 241012)
+++ trunk/Tools/ChangeLog 2019-02-06 08:05:57 UTC (rev 241013)
@@ -1,3 +1,16 @@
+2019-02-06 Michael Catanzaro <[email protected]>
+
+ REGRESSION(r240785): [SOUP] Broke cookie persistent storage
+ https://bugs.webkit.org/show_bug.cgi?id=194209
+
+ Reviewed by Carlos Garcia Campos.
+
+ Enhance TestCookieManager to ensure this doesn't happen again.
+
+ * TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp:
+ (testCookieManagerPersistentStorage):
+ (beforeAll):
+
2019-02-05 Wenson Hsieh <[email protected]>
Rename TestOptions.ignoreSynchronousMessagingTimeoutsForTesting
Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp (241012 => 241013)
--- trunk/Tools/TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp 2019-02-06 07:54:43 UTC (rev 241012)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitGLib/TestCookieManager.cpp 2019-02-06 08:05:57 UTC (rev 241013)
@@ -56,9 +56,9 @@
CookieManagerTest()
: WebViewTest()
- , m_cookieManager(webkit_web_context_get_cookie_manager(webkit_web_view_get_context(m_webView)))
+ , m_cookieManager(webkit_web_context_get_cookie_manager(m_webContext.get()))
{
- g_assert_true(webkit_website_data_manager_get_cookie_manager(webkit_web_context_get_website_data_manager(webkit_web_view_get_context(m_webView))) == m_cookieManager);
+ g_assert_true(webkit_website_data_manager_get_cookie_manager(webkit_web_context_get_website_data_manager(m_webContext.get())) == m_cookieManager);
g_signal_connect(m_cookieManager, "changed", G_CALLBACK(cookiesChangedCallback), this);
}
@@ -535,10 +535,28 @@
g_assert_true(test->m_cookiesChanged);
}
-static void testCookieManagerPersistentStorage(CookieManagerTest* test, gconstpointer)
+class CookiePersistentStorageTest: public CookieManagerTest {
+public:
+ MAKE_GLIB_TEST_FIXTURE_WITH_SETUP_TEARDOWN(CookiePersistentStorageTest, setup, teardown);
+
+ static void setup()
+ {
+ WebViewTest::shouldInitializeWebViewInConstructor = false;
+ }
+
+ static void teardown()
+ {
+ WebViewTest::shouldInitializeWebViewInConstructor = true;
+ }
+};
+
+static void testCookieManagerPersistentStorage(CookiePersistentStorageTest* test, gconstpointer)
{
test->setAcceptPolicy(WEBKIT_COOKIE_POLICY_ACCEPT_ALWAYS);
+ g_unlink(test->m_cookiesTextFile.get());
+ g_unlink(test->m_cookiesSQLiteFile.get());
+
// Text storage using a new file.
test->setPersistentStorage(WEBKIT_COOKIE_PERSISTENT_STORAGE_TEXT);
char** domains = test->getDomains();
@@ -545,6 +563,9 @@
g_assert_nonnull(domains);
g_assert_cmpint(g_strv_length(domains), ==, 0);
+ // Initialization of web view is deferred to ensure it's not required for
+ // setting persistent storage to work.
+ test->initializeWebView();
test->loadURI(kServer->getURIForPath("/index.html").data());
test->waitUntilLoadFinished();
g_assert_true(test->m_cookiesChanged);
@@ -551,8 +572,8 @@
domains = test->getDomains();
g_assert_nonnull(domains);
g_assert_cmpint(g_strv_length(domains), ==, 2);
+ g_assert_true(g_file_test(test->m_cookiesTextFile.get(), G_FILE_TEST_EXISTS));
-
// SQLite storage using a new file.
test->setPersistentStorage(WEBKIT_COOKIE_PERSISTENT_STORAGE_SQLITE);
domains = test->getDomains();
@@ -565,6 +586,7 @@
domains = test->getDomains();
g_assert_nonnull(domains);
g_assert_cmpint(g_strv_length(domains), ==, 2);
+ g_assert_true(g_file_test(test->m_cookiesSQLiteFile.get(), G_FILE_TEST_EXISTS));
// Text storage using an existing file.
test->setPersistentStorage(WEBKIT_COOKIE_PERSISTENT_STORAGE_TEXT);
@@ -698,7 +720,7 @@
CookieManagerTest::add("WebKitCookieManager", "delete-cookie", testCookieManagerDeleteCookie);
CookieManagerTest::add("WebKitCookieManager", "delete-cookies", testCookieManagerDeleteCookies);
CookieManagerTest::add("WebKitCookieManager", "cookies-changed", testCookieManagerCookiesChanged);
- CookieManagerTest::add("WebKitCookieManager", "persistent-storage", testCookieManagerPersistentStorage);
+ CookiePersistentStorageTest::add("WebKitCookieManager", "persistent-storage", testCookieManagerPersistentStorage);
CookieManagerTest::add("WebKitCookieManager", "persistent-storage-delete-all", testCookieManagerPersistentStorageDeleteAll);
CookieManagerTest::add("WebKitCookieManager", "ephemeral", testCookieManagerEphemeral);
}