Diff
Modified: branches/safari-606.1.36.0-branch/Source/WebKit/ChangeLog (234759 => 234760)
--- branches/safari-606.1.36.0-branch/Source/WebKit/ChangeLog 2018-08-10 16:45:57 UTC (rev 234759)
+++ branches/safari-606.1.36.0-branch/Source/WebKit/ChangeLog 2018-08-10 16:46:21 UTC (rev 234760)
@@ -1,3 +1,66 @@
+2018-08-10 Kocsen Chung <[email protected]>
+
+ Cherry-pick r234730. rdar://problem/43144157
+
+ REGRESSION (r232083): WKWebView loses first-party cookies on iOS
+ https://bugs.webkit.org/show_bug.cgi?id=188443
+ <rdar://problem/42991584>
+
+ Patch by Sihui Liu <[email protected]> on 2018-08-09
+ Reviewed by Chris Dumez.
+
+ Source/WebKit:
+
+ Revert the change to set sharedCookieStorage for iOS as it is breaking Kayak.
+
+ * NetworkProcess/NetworkProcess.h:
+ * NetworkProcess/NetworkProcessCreationParameters.cpp:
+ (WebKit::NetworkProcessCreationParameters::encode const):
+ (WebKit::NetworkProcessCreationParameters::decode):
+ * NetworkProcess/NetworkProcessCreationParameters.h:
+ * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
+ (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
+ * Shared/WebProcessCreationParameters.cpp:
+ (WebKit::WebProcessCreationParameters::encode const):
+ (WebKit::WebProcessCreationParameters::decode):
+ * Shared/WebProcessCreationParameters.h:
+ * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
+ (WebKit::WebProcessPool::platformInitializeWebProcess):
+ (WebKit::WebProcessPool::platformInitializeNetworkProcess):
+
+ Tools:
+
+ Skip WebKit.WKHTTPCookieStoreWithoutProcessPool on iOS.
+
+ * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
+
+ git-svn-id: https://svn.webkit.org/repository/webkit/trunk@234730 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+ 2018-08-09 Sihui Liu <[email protected]>
+
+ REGRESSION (r232083): WKWebView loses first-party cookies on iOS
+ https://bugs.webkit.org/show_bug.cgi?id=188443
+ <rdar://problem/42991584>
+
+ Reviewed by Chris Dumez.
+
+ Revert the change to set sharedCookieStorage for iOS as it is breaking Kayak.
+
+ * NetworkProcess/NetworkProcess.h:
+ * NetworkProcess/NetworkProcessCreationParameters.cpp:
+ (WebKit::NetworkProcessCreationParameters::encode const):
+ (WebKit::NetworkProcessCreationParameters::decode):
+ * NetworkProcess/NetworkProcessCreationParameters.h:
+ * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
+ (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
+ * Shared/WebProcessCreationParameters.cpp:
+ (WebKit::WebProcessCreationParameters::encode const):
+ (WebKit::WebProcessCreationParameters::decode):
+ * Shared/WebProcessCreationParameters.h:
+ * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
+ (WebKit::WebProcessPool::platformInitializeWebProcess):
+ (WebKit::WebProcessPool::platformInitializeNetworkProcess):
+
2018-08-01 Babak Shafiei <[email protected]>
Cherry-pick r234486. rdar://problem/42844004
Modified: branches/safari-606.1.36.0-branch/Source/WebKit/NetworkProcess/NetworkProcess.h (234759 => 234760)
--- branches/safari-606.1.36.0-branch/Source/WebKit/NetworkProcess/NetworkProcess.h 2018-08-10 16:45:57 UTC (rev 234759)
+++ branches/safari-606.1.36.0-branch/Source/WebKit/NetworkProcess/NetworkProcess.h 2018-08-10 16:46:21 UTC (rev 234760)
@@ -248,7 +248,7 @@
void setNetworkProxySettings(const WebCore::SoupNetworkProxySettings&);
#endif
-#if PLATFORM(COCOA)
+#if PLATFORM(MAC)
static void setSharedHTTPCookieStorage(const Vector<uint8_t>& identifier);
#endif
Modified: branches/safari-606.1.36.0-branch/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp (234759 => 234760)
--- branches/safari-606.1.36.0-branch/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp 2018-08-10 16:45:57 UTC (rev 234759)
+++ branches/safari-606.1.36.0-branch/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp 2018-08-10 16:46:21 UTC (rev 234760)
@@ -52,7 +52,7 @@
#if ENABLE(NETWORK_CACHE_SPECULATIVE_REVALIDATION)
encoder << shouldEnableNetworkCacheSpeculativeRevalidation;
#endif
-#if PLATFORM(COCOA)
+#if PLATFORM(MAC)
encoder << uiProcessCookieStorageIdentifier;
#endif
encoder << defaultSessionPendingCookies;
@@ -145,7 +145,7 @@
if (!decoder.decode(result.shouldEnableNetworkCacheSpeculativeRevalidation))
return false;
#endif
-#if PLATFORM(COCOA)
+#if PLATFORM(MAC)
if (!decoder.decode(result.uiProcessCookieStorageIdentifier))
return false;
#endif
Modified: branches/safari-606.1.36.0-branch/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h (234759 => 234760)
--- branches/safari-606.1.36.0-branch/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h 2018-08-10 16:45:57 UTC (rev 234759)
+++ branches/safari-606.1.36.0-branch/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h 2018-08-10 16:46:21 UTC (rev 234760)
@@ -63,7 +63,7 @@
#if ENABLE(NETWORK_CACHE_SPECULATIVE_REVALIDATION)
bool shouldEnableNetworkCacheSpeculativeRevalidation { false };
#endif
-#if PLATFORM(COCOA)
+#if PLATFORM(MAC)
Vector<uint8_t> uiProcessCookieStorageIdentifier;
#endif
Vector<WebCore::Cookie> defaultSessionPendingCookies;
Modified: branches/safari-606.1.36.0-branch/Source/WebKit/NetworkProcess/cocoa/NetworkProcessCocoa.mm (234759 => 234760)
--- branches/safari-606.1.36.0-branch/Source/WebKit/NetworkProcess/cocoa/NetworkProcessCocoa.mm 2018-08-10 16:45:57 UTC (rev 234759)
+++ branches/safari-606.1.36.0-branch/Source/WebKit/NetworkProcess/cocoa/NetworkProcessCocoa.mm 2018-08-10 16:46:21 UTC (rev 234760)
@@ -96,7 +96,7 @@
initializeNetworkSettings();
-#if PLATFORM(COCOA)
+#if PLATFORM(MAC)
setSharedHTTPCookieStorage(parameters.uiProcessCookieStorageIdentifier);
#endif
@@ -173,7 +173,7 @@
}
}
-#if PLATFORM(COCOA)
+#if PLATFORM(MAC)
void NetworkProcess::setSharedHTTPCookieStorage(const Vector<uint8_t>& identifier)
{
ASSERT(hasProcessPrivilege(ProcessPrivilege::CanAccessRawCookies));
Modified: branches/safari-606.1.36.0-branch/Source/WebKit/Shared/WebProcessCreationParameters.cpp (234759 => 234760)
--- branches/safari-606.1.36.0-branch/Source/WebKit/Shared/WebProcessCreationParameters.cpp 2018-08-10 16:45:57 UTC (rev 234759)
+++ branches/safari-606.1.36.0-branch/Source/WebKit/Shared/WebProcessCreationParameters.cpp 2018-08-10 16:46:21 UTC (rev 234760)
@@ -57,7 +57,7 @@
encoder << mediaCacheDirectoryExtensionHandle;
encoder << _javascript_ConfigurationDirectory;
encoder << _javascript_ConfigurationDirectoryExtensionHandle;
-#if PLATFORM(COCOA)
+#if PLATFORM(MAC)
encoder << uiProcessCookieStorageIdentifier;
#endif
#if PLATFORM(IOS)
@@ -214,7 +214,7 @@
return false;
parameters._javascript_ConfigurationDirectoryExtensionHandle = WTFMove(*_javascript_ConfigurationDirectoryExtensionHandle);
-#if PLATFORM(COCOA)
+#if PLATFORM(MAC)
if (!decoder.decode(parameters.uiProcessCookieStorageIdentifier))
return false;
#endif
Modified: branches/safari-606.1.36.0-branch/Source/WebKit/Shared/WebProcessCreationParameters.h (234759 => 234760)
--- branches/safari-606.1.36.0-branch/Source/WebKit/Shared/WebProcessCreationParameters.h 2018-08-10 16:45:57 UTC (rev 234759)
+++ branches/safari-606.1.36.0-branch/Source/WebKit/Shared/WebProcessCreationParameters.h 2018-08-10 16:46:21 UTC (rev 234760)
@@ -84,7 +84,7 @@
SandboxExtension::Handle mediaCacheDirectoryExtensionHandle;
String _javascript_ConfigurationDirectory;
SandboxExtension::Handle _javascript_ConfigurationDirectoryExtensionHandle;
-#if PLATFORM(COCOA)
+#if PLATFORM(MAC)
Vector<uint8_t> uiProcessCookieStorageIdentifier;
#endif
#if PLATFORM(IOS)
Modified: branches/safari-606.1.36.0-branch/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm (234759 => 234760)
--- branches/safari-606.1.36.0-branch/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm 2018-08-10 16:45:57 UTC (rev 234759)
+++ branches/safari-606.1.36.0-branch/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm 2018-08-10 16:46:21 UTC (rev 234760)
@@ -248,7 +248,7 @@
}
parameters.networkATSContext = adoptCF(_CFNetworkCopyATSContext());
-#if PLATFORM(COCOA)
+#if PLATFORM(MAC)
ASSERT(parameters.uiProcessCookieStorageIdentifier.isEmpty());
ASSERT(hasProcessPrivilege(ProcessPrivilege::CanAccessRawCookies));
parameters.uiProcessCookieStorageIdentifier = identifyingDataFromCookieStorage([[NSHTTPCookieStorage sharedHTTPCookieStorage] _cookieStorage]);
@@ -312,7 +312,7 @@
parameters.shouldSuppressMemoryPressureHandler = [defaults boolForKey:WebKitSuppressMemoryPressureHandlerDefaultsKey];
parameters.loadThrottleLatency = Seconds { [defaults integerForKey:WebKitNetworkLoadThrottleLatencyMillisecondsDefaultsKey] / 1000. };
-#if PLATFORM(COCOA)
+#if PLATFORM(MAC)
ASSERT(parameters.uiProcessCookieStorageIdentifier.isEmpty());
ASSERT(hasProcessPrivilege(ProcessPrivilege::CanAccessRawCookies));
parameters.uiProcessCookieStorageIdentifier = identifyingDataFromCookieStorage([[NSHTTPCookieStorage sharedHTTPCookieStorage] _cookieStorage]);
Modified: branches/safari-606.1.36.0-branch/Tools/ChangeLog (234759 => 234760)
--- branches/safari-606.1.36.0-branch/Tools/ChangeLog 2018-08-10 16:45:57 UTC (rev 234759)
+++ branches/safari-606.1.36.0-branch/Tools/ChangeLog 2018-08-10 16:46:21 UTC (rev 234760)
@@ -1,3 +1,53 @@
+2018-08-10 Kocsen Chung <[email protected]>
+
+ Cherry-pick r234730. rdar://problem/43144157
+
+ REGRESSION (r232083): WKWebView loses first-party cookies on iOS
+ https://bugs.webkit.org/show_bug.cgi?id=188443
+ <rdar://problem/42991584>
+
+ Patch by Sihui Liu <[email protected]> on 2018-08-09
+ Reviewed by Chris Dumez.
+
+ Source/WebKit:
+
+ Revert the change to set sharedCookieStorage for iOS as it is breaking Kayak.
+
+ * NetworkProcess/NetworkProcess.h:
+ * NetworkProcess/NetworkProcessCreationParameters.cpp:
+ (WebKit::NetworkProcessCreationParameters::encode const):
+ (WebKit::NetworkProcessCreationParameters::decode):
+ * NetworkProcess/NetworkProcessCreationParameters.h:
+ * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
+ (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
+ * Shared/WebProcessCreationParameters.cpp:
+ (WebKit::WebProcessCreationParameters::encode const):
+ (WebKit::WebProcessCreationParameters::decode):
+ * Shared/WebProcessCreationParameters.h:
+ * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
+ (WebKit::WebProcessPool::platformInitializeWebProcess):
+ (WebKit::WebProcessPool::platformInitializeNetworkProcess):
+
+ Tools:
+
+ Skip WebKit.WKHTTPCookieStoreWithoutProcessPool on iOS.
+
+ * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
+
+ git-svn-id: https://svn.webkit.org/repository/webkit/trunk@234730 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+ 2018-08-09 Sihui Liu <[email protected]>
+
+ REGRESSION (r232083): WKWebView loses first-party cookies on iOS
+ https://bugs.webkit.org/show_bug.cgi?id=188443
+ <rdar://problem/42991584>
+
+ Reviewed by Chris Dumez.
+
+ Skip WebKit.WKHTTPCookieStoreWithoutProcessPool on iOS.
+
+ * TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm:
+
2018-08-03 Babak Shafiei <[email protected]>
Cherry-pick r234547. rdar://problem/42902608
Modified: branches/safari-606.1.36.0-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm (234759 => 234760)
--- branches/safari-606.1.36.0-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm 2018-08-10 16:45:57 UTC (rev 234759)
+++ branches/safari-606.1.36.0-branch/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKHTTPCookieStore.mm 2018-08-10 16:46:21 UTC (rev 234760)
@@ -476,6 +476,8 @@
}
@end
+// FIXME: on iOS, UI process should be using the same cookie file as the network process for default session.
+#if PLATFORM(MAC)
TEST(WebKit, WKHTTPCookieStoreWithoutProcessPool)
{
RetainPtr<NSHTTPCookie> sessionCookie = [NSHTTPCookie cookieWithProperties:@{
@@ -567,4 +569,5 @@
[webView loadHTMLString:alertCookieHTML baseURL:[NSURL URLWithString:@"http://127.0.0.1"]];
TestWebKitAPI::Util::run(&finished);
}
+#endif // PLATFORM(MAC)
#endif