Title: [252382] tags/Safari-609.1.10.1/Source/WebKit
Revision
252382
Author
[email protected]
Date
2019-11-12 17:31:59 -0800 (Tue, 12 Nov 2019)

Log Message

Cherry-pick r252364. rdar://problem/57115922

    Revert part of r251676
    https://bugs.webkit.org/show_bug.cgi?id=203066
    <rdar://problem/57008444>

    * NetworkProcess/NetworkProcess.h:
    (WebKit::NetworkProcess::suppressesConnectionTerminationOnSystemChange const):
    * NetworkProcess/NetworkProcessCreationParameters.cpp:
    (WebKit::NetworkProcessCreationParameters::encode const):
    (WebKit::NetworkProcessCreationParameters::decode):
    * NetworkProcess/NetworkProcessCreationParameters.h:
    * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
    (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
    * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
    (WebKit::NetworkSessionCocoa::NetworkSessionCocoa):
    * UIProcess/API/APIProcessPoolConfiguration.cpp:
    (API::ProcessPoolConfiguration::copy):
    * UIProcess/API/APIProcessPoolConfiguration.h:
    * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
    * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
    (-[_WKProcessPoolConfiguration suppressesConnectionTerminationOnSystemChange]):
    (-[_WKProcessPoolConfiguration setSuppressesConnectionTerminationOnSystemChange:]):
    * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
    (WebKit::WebProcessPool::platformInitializeNetworkProcess):

    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@252364 268f45cc-cd09-0410-ab3c-d52691b4dbfc

Modified Paths

Diff

Modified: tags/Safari-609.1.10.1/Source/WebKit/ChangeLog (252381 => 252382)


--- tags/Safari-609.1.10.1/Source/WebKit/ChangeLog	2019-11-13 01:24:28 UTC (rev 252381)
+++ tags/Safari-609.1.10.1/Source/WebKit/ChangeLog	2019-11-13 01:31:59 UTC (rev 252382)
@@ -1,3 +1,61 @@
+2019-11-12  Kocsen Chung  <[email protected]>
+
+        Cherry-pick r252364. rdar://problem/57115922
+
+    Revert part of r251676
+    https://bugs.webkit.org/show_bug.cgi?id=203066
+    <rdar://problem/57008444>
+    
+    * NetworkProcess/NetworkProcess.h:
+    (WebKit::NetworkProcess::suppressesConnectionTerminationOnSystemChange const):
+    * NetworkProcess/NetworkProcessCreationParameters.cpp:
+    (WebKit::NetworkProcessCreationParameters::encode const):
+    (WebKit::NetworkProcessCreationParameters::decode):
+    * NetworkProcess/NetworkProcessCreationParameters.h:
+    * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
+    (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
+    * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
+    (WebKit::NetworkSessionCocoa::NetworkSessionCocoa):
+    * UIProcess/API/APIProcessPoolConfiguration.cpp:
+    (API::ProcessPoolConfiguration::copy):
+    * UIProcess/API/APIProcessPoolConfiguration.h:
+    * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
+    * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
+    (-[_WKProcessPoolConfiguration suppressesConnectionTerminationOnSystemChange]):
+    (-[_WKProcessPoolConfiguration setSuppressesConnectionTerminationOnSystemChange:]):
+    * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
+    (WebKit::WebProcessPool::platformInitializeNetworkProcess):
+    
+    
+    
+    git-svn-id: https://svn.webkit.org/repository/webkit/trunk@252364 268f45cc-cd09-0410-ab3c-d52691b4dbfc
+
+    2019-11-12  Alex Christensen  <[email protected]>
+
+            Revert part of r251676
+            https://bugs.webkit.org/show_bug.cgi?id=203066
+            <rdar://problem/57008444>
+
+            * NetworkProcess/NetworkProcess.h:
+            (WebKit::NetworkProcess::suppressesConnectionTerminationOnSystemChange const):
+            * NetworkProcess/NetworkProcessCreationParameters.cpp:
+            (WebKit::NetworkProcessCreationParameters::encode const):
+            (WebKit::NetworkProcessCreationParameters::decode):
+            * NetworkProcess/NetworkProcessCreationParameters.h:
+            * NetworkProcess/cocoa/NetworkProcessCocoa.mm:
+            (WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):
+            * NetworkProcess/cocoa/NetworkSessionCocoa.mm:
+            (WebKit::NetworkSessionCocoa::NetworkSessionCocoa):
+            * UIProcess/API/APIProcessPoolConfiguration.cpp:
+            (API::ProcessPoolConfiguration::copy):
+            * UIProcess/API/APIProcessPoolConfiguration.h:
+            * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h:
+            * UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
+            (-[_WKProcessPoolConfiguration suppressesConnectionTerminationOnSystemChange]):
+            (-[_WKProcessPoolConfiguration setSuppressesConnectionTerminationOnSystemChange:]):
+            * UIProcess/Cocoa/WebProcessPoolCocoa.mm:
+            (WebKit::WebProcessPool::platformInitializeNetworkProcess):
+
 2019-11-07  Alan Coon  <[email protected]>
 
         Cherry-pick r252183. rdar://problem/54769320

Modified: tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/NetworkProcess.h (252381 => 252382)


--- tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/NetworkProcess.h	2019-11-13 01:24:28 UTC (rev 252381)
+++ tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/NetworkProcess.h	2019-11-13 01:31:59 UTC (rev 252382)
@@ -185,6 +185,7 @@
     void logDiagnosticMessageWithValue(WebPageProxyIdentifier, const String& message, const String& description, double value, unsigned significantFigures, WebCore::ShouldSample);
 
 #if PLATFORM(COCOA)
+    bool suppressesConnectionTerminationOnSystemChange() const { return m_suppressesConnectionTerminationOnSystemChange; }
     RetainPtr<CFDataRef> sourceApplicationAuditData() const;
 #endif
 #if PLATFORM(COCOA) || USE(SOUP)
@@ -493,6 +494,7 @@
     // multiple requests to clear the cache can come in before previous requests complete, and we need to wait for all of them.
     // In the future using WorkQueue and a counting semaphore would work, as would WorkQueue supporting the libdispatch concept of "work groups".
     dispatch_group_t m_clearCacheDispatchGroup { nullptr };
+    bool m_suppressesConnectionTerminationOnSystemChange { false };
 #endif
 
 #if ENABLE(CONTENT_EXTENSIONS)

Modified: tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp (252381 => 252382)


--- tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp	2019-11-13 01:24:28 UTC (rev 252381)
+++ tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.cpp	2019-11-13 01:31:59 UTC (rev 252382)
@@ -55,6 +55,7 @@
     encoder << uiProcessSDKVersion;
     IPC::encode(encoder, networkATSContext.get());
     encoder << storageAccessAPIEnabled;
+    encoder << suppressesConnectionTerminationOnSystemChange;
 #endif
     encoder << defaultDataStoreParameters;
 #if USE(SOUP)
@@ -120,6 +121,8 @@
         return false;
     if (!decoder.decode(result.storageAccessAPIEnabled))
         return false;
+    if (!decoder.decode(result.suppressesConnectionTerminationOnSystemChange))
+        return false;
 #endif
 
     Optional<WebsiteDataStoreParameters> defaultDataStoreParameters;

Modified: tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h (252381 => 252382)


--- tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h	2019-11-13 01:24:28 UTC (rev 252381)
+++ tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/NetworkProcessCreationParameters.h	2019-11-13 01:31:59 UTC (rev 252382)
@@ -70,6 +70,7 @@
     uint32_t uiProcessSDKVersion { 0 };
     RetainPtr<CFDataRef> networkATSContext;
     bool storageAccessAPIEnabled;
+    bool suppressesConnectionTerminationOnSystemChange;
 #endif
 
     WebsiteDataStoreParameters defaultDataStoreParameters;

Modified: tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/cocoa/NetworkProcessCocoa.mm (252381 => 252382)


--- tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/cocoa/NetworkProcessCocoa.mm	2019-11-13 01:24:28 UTC (rev 252381)
+++ tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/cocoa/NetworkProcessCocoa.mm	2019-11-13 01:31:59 UTC (rev 252382)
@@ -102,6 +102,7 @@
 #endif
 
     WebCore::NetworkStorageSession::setStorageAccessAPIEnabled(parameters.storageAccessAPIEnabled);
+    m_suppressesConnectionTerminationOnSystemChange = parameters.suppressesConnectionTerminationOnSystemChange;
 
     // FIXME: Most of what this function does for cache size gets immediately overridden by setCacheModel().
     // - memory cache size passed from UI process is always ignored;

Modified: tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm (252381 => 252382)


--- tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm	2019-11-13 01:24:28 UTC (rev 252381)
+++ tags/Safari-609.1.10.1/Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm	2019-11-13 01:31:59 UTC (rev 252382)
@@ -1038,7 +1038,7 @@
 
 #if (PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101400) || PLATFORM(IOS_FAMILY)
     // FIXME: Replace @"kCFStreamPropertyAutoErrorOnSystemChange" with a constant from the SDK once rdar://problem/40650244 is in a build.
-    if (parameters.suppressesConnectionTerminationOnSystemChange)
+    if (networkProcess.suppressesConnectionTerminationOnSystemChange() || parameters.suppressesConnectionTerminationOnSystemChange)
         configuration._socketStreamProperties = @{ @"kCFStreamPropertyAutoErrorOnSystemChange" : @NO };
 #endif
 

Modified: tags/Safari-609.1.10.1/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.cpp (252381 => 252382)


--- tags/Safari-609.1.10.1/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.cpp	2019-11-13 01:24:28 UTC (rev 252381)
+++ tags/Safari-609.1.10.1/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.cpp	2019-11-13 01:31:59 UTC (rev 252382)
@@ -70,6 +70,9 @@
     copy->m_isAutomaticProcessWarmingEnabledByClient = this->m_isAutomaticProcessWarmingEnabledByClient;
     copy->m_usesWebProcessCache = this->m_usesWebProcessCache;
     copy->m_usesBackForwardCache = this->m_usesBackForwardCache;
+#if PLATFORM(COCOA)
+    copy->m_suppressesConnectionTerminationOnSystemChange = this->m_suppressesConnectionTerminationOnSystemChange;
+#endif
     copy->m_customWebContentServiceBundleIdentifier = this->m_customWebContentServiceBundleIdentifier;
     copy->m_usesSingleWebProcess = m_usesSingleWebProcess;
 

Modified: tags/Safari-609.1.10.1/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.h (252381 => 252382)


--- tags/Safari-609.1.10.1/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.h	2019-11-13 01:24:28 UTC (rev 252381)
+++ tags/Safari-609.1.10.1/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.h	2019-11-13 01:31:59 UTC (rev 252382)
@@ -137,6 +137,11 @@
     const WTF::String& customWebContentServiceBundleIdentifier() const { return m_customWebContentServiceBundleIdentifier; }
     void setCustomWebContentServiceBundleIdentifier(const WTF::String& customWebContentServiceBundleIdentifier) { m_customWebContentServiceBundleIdentifier = customWebContentServiceBundleIdentifier; }
 
+#if PLATFORM(COCOA)
+    bool suppressesConnectionTerminationOnSystemChange() const { return m_suppressesConnectionTerminationOnSystemChange; }
+    void setSuppressesConnectionTerminationOnSystemChange(bool suppressesConnectionTerminationOnSystemChange) { m_suppressesConnectionTerminationOnSystemChange = suppressesConnectionTerminationOnSystemChange; }
+#endif
+
 private:
     WTF::String m_injectedBundlePath;
     Vector<WTF::String> m_customClassesForParameterCoder;
@@ -169,6 +174,9 @@
 #if PLATFORM(IOS_FAMILY)
     WTF::String m_ctDataConnectionServiceType;
 #endif
+#if PLATFORM(COCOA)
+    bool m_suppressesConnectionTerminationOnSystemChange { false };
+#endif
 };
 
 } // namespace API

Modified: tags/Safari-609.1.10.1/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h (252381 => 252382)


--- tags/Safari-609.1.10.1/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h	2019-11-13 01:24:28 UTC (rev 252381)
+++ tags/Safari-609.1.10.1/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h	2019-11-13 01:31:59 UTC (rev 252382)
@@ -67,6 +67,7 @@
 @property (nonatomic) BOOL prewarmsProcessesAutomatically WK_API_AVAILABLE(macos(10.14.4), ios(12.2));
 @property (nonatomic) BOOL usesWebProcessCache WK_API_AVAILABLE(macos(10.14.4), ios(12.2));
 @property (nonatomic) BOOL pageCacheEnabled WK_API_AVAILABLE(macos(10.14), ios(12.0));
+@property (nonatomic) BOOL suppressesConnectionTerminationOnSystemChange WK_API_DEPRECATED_WITH_REPLACEMENT("_WKWebsiteDataStoreConfiguration.suppressesConnectionTerminationOnSystemChange", macos(10.14, WK_MAC_TBA), ios(12.0, WK_IOS_TBA));
 @property (nonatomic, getter=isJITEnabled) BOOL JITEnabled WK_API_AVAILABLE(macos(10.14.4), ios(12.2));
 @property (nonatomic, nullable, copy, setter=setHSTSStorageDirectory:) NSURL *hstsStorageDirectory WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
 

Modified: tags/Safari-609.1.10.1/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm (252381 => 252382)


--- tags/Safari-609.1.10.1/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm	2019-11-13 01:24:28 UTC (rev 252381)
+++ tags/Safari-609.1.10.1/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm	2019-11-13 01:31:59 UTC (rev 252382)
@@ -331,6 +331,16 @@
     _processPoolConfiguration->setUsesSingleWebProcess(enabled);
 }
 
+- (BOOL)suppressesConnectionTerminationOnSystemChange
+{
+    return _processPoolConfiguration->suppressesConnectionTerminationOnSystemChange();
+}
+
+- (void)setSuppressesConnectionTerminationOnSystemChange:(BOOL)suppressesConnectionTerminationOnSystemChange
+{
+    _processPoolConfiguration->setSuppressesConnectionTerminationOnSystemChange(suppressesConnectionTerminationOnSystemChange);
+}
+
 - (BOOL)isJITEnabled
 {
     return _processPoolConfiguration->isJITEnabled();

Modified: tags/Safari-609.1.10.1/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm (252381 => 252382)


--- tags/Safari-609.1.10.1/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm	2019-11-13 01:24:28 UTC (rev 252381)
+++ tags/Safari-609.1.10.1/Source/WebKit/UIProcess/Cocoa/WebProcessPoolCocoa.mm	2019-11-13 01:31:59 UTC (rev 252382)
@@ -302,6 +302,7 @@
 #endif
 
     parameters.storageAccessAPIEnabled = storageAccessAPIEnabled();
+    parameters.suppressesConnectionTerminationOnSystemChange = m_configuration->suppressesConnectionTerminationOnSystemChange();
 
     parameters.shouldEnableITPDatabase = [defaults boolForKey:[NSString stringWithFormat:@"InternalDebug%@", WebPreferencesKey::isITPDatabaseEnabledKey().createCFString().get()]];
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to