Title: [234760] branches/safari-606.1.36.0-branch
Revision
234760
Author
[email protected]
Date
2018-08-10 09:46:21 -0700 (Fri, 10 Aug 2018)

Log Message

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

Modified Paths

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
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to