Title: [247757] trunk
Revision
247757
Author
russel...@apple.com
Date
2019-07-23 17:03:10 -0700 (Tue, 23 Jul 2019)

Log Message

Unreviewed, rolling out r247745.

This broke API test
TestWebKitAPI.WKProcessPool._javascript_Configuration as
indicated by EWS

Reverted changeset:

"Move _javascript_ConfigurationDirectory SPI from
_WKProcessPoolConfiguration to WKProcessPoolPrivate to make it
runtime switchable"
https://bugs.webkit.org/show_bug.cgi?id=200045
https://trac.webkit.org/changeset/247745

Modified Paths

Diff

Modified: trunk/Source/WebKit/ChangeLog (247756 => 247757)


--- trunk/Source/WebKit/ChangeLog	2019-07-24 00:02:05 UTC (rev 247756)
+++ trunk/Source/WebKit/ChangeLog	2019-07-24 00:03:10 UTC (rev 247757)
@@ -1,3 +1,19 @@
+2019-07-23  Russell Epstein  <repst...@apple.com>
+
+        Unreviewed, rolling out r247745.
+
+        This broke API test
+        TestWebKitAPI.WKProcessPool._javascript_Configuration as
+        indicated by EWS
+
+        Reverted changeset:
+
+        "Move _javascript_ConfigurationDirectory SPI from
+        _WKProcessPoolConfiguration to WKProcessPoolPrivate to make it
+        runtime switchable"
+        https://bugs.webkit.org/show_bug.cgi?id=200045
+        https://trac.webkit.org/changeset/247745
+
 2019-07-23  Chris Fleizach  <cfleiz...@apple.com>
 
         AX: CrashTracer: com.apple.WebKit.WebContent at WebKit: WebKit::WebSpeechSynthesisClient::speak

Modified: trunk/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.cpp (247756 => 247757)


--- trunk/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.cpp	2019-07-24 00:02:05 UTC (rev 247756)
+++ trunk/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.cpp	2019-07-24 00:03:10 UTC (rev 247757)
@@ -99,6 +99,7 @@
     copy->m_deviceIdHashSaltsStorageDirectory = this->m_deviceIdHashSaltsStorageDirectory;
     copy->m_mediaKeysStorageDirectory = this->m_mediaKeysStorageDirectory;
     copy->m_resourceLoadStatisticsDirectory = this->m_resourceLoadStatisticsDirectory;
+    copy->m_javaScriptConfigurationDirectory = this->m_javaScriptConfigurationDirectory;
     copy->m_webSQLDatabaseDirectory = this->m_webSQLDatabaseDirectory;
     copy->m_cachePartitionedURLSchemes = this->m_cachePartitionedURLSchemes;
     copy->m_alwaysRevalidatedURLSchemes = this->m_alwaysRevalidatedURLSchemes;

Modified: trunk/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.h (247756 => 247757)


--- trunk/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.h	2019-07-24 00:02:05 UTC (rev 247756)
+++ trunk/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.h	2019-07-24 00:03:10 UTC (rev 247757)
@@ -114,6 +114,9 @@
     const WTF::String& resourceLoadStatisticsDirectory() const { return m_resourceLoadStatisticsDirectory; }
     void setResourceLoadStatisticsDirectory(const WTF::String& resourceLoadStatisticsDirectory) { m_resourceLoadStatisticsDirectory = resourceLoadStatisticsDirectory; }
 
+    const WTF::String& _javascript_ConfigurationDirectory() const { return m_javaScriptConfigurationDirectory; }
+    void setJavaScriptConfigurationDirectory(const WTF::String& _javascript_ConfigurationDirectory) { m_javaScriptConfigurationDirectory = _javascript_ConfigurationDirectory; }
+
     const Vector<WTF::String>& cachePartitionedURLSchemes() { return m_cachePartitionedURLSchemes; }
     void setCachePartitionedURLSchemes(Vector<WTF::String>&& cachePartitionedURLSchemes) { m_cachePartitionedURLSchemes = WTFMove(cachePartitionedURLSchemes); }
 
@@ -202,6 +205,7 @@
     WTF::String m_webSQLDatabaseDirectory;
     WTF::String m_mediaKeysStorageDirectory;
     WTF::String m_resourceLoadStatisticsDirectory;
+    WTF::String m_javaScriptConfigurationDirectory;
     Vector<WTF::String> m_cachePartitionedURLSchemes;
     Vector<WTF::String> m_alwaysRevalidatedURLSchemes;
     Vector<WTF::CString> m_additionalReadAccessAllowedPaths;

Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKProcessPool.mm (247756 => 247757)


--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKProcessPool.mm	2019-07-24 00:02:05 UTC (rev 247756)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKProcessPool.mm	2019-07-24 00:03:10 UTC (rev 247757)
@@ -403,18 +403,6 @@
     _processPool->setAutomationSession(automationSession ? automationSession->_session.get() : nullptr);
 }
 
-- (NSURL *)_javaScriptConfigurationDirectory
-{
-    return [NSURL fileURLWithPath:_processPool->_javascript_ConfigurationDirectory() isDirectory:YES];
-}
-
-- (void)_setJavaScriptConfigurationDirectory:(NSURL *)directory
-{
-    if (directory && ![directory isFileURL])
-        [NSException raise:NSInvalidArgumentException format:@"%@ is not a file URL", directory];
-    _processPool->setJavaScriptConfigurationDirectory(directory.path);
-}
-
 - (void)_addSupportedPlugin:(NSString *) domain named:(NSString *) name withMimeTypes: (NSSet<NSString *> *) nsMimeTypes withExtensions: (NSSet<NSString *> *) nsExtensions
 {
     HashSet<String> mimeTypes;

Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/WKProcessPoolPrivate.h (247756 => 247757)


--- trunk/Source/WebKit/UIProcess/API/Cocoa/WKProcessPoolPrivate.h	2019-07-24 00:02:05 UTC (rev 247756)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/WKProcessPoolPrivate.h	2019-07-24 00:03:10 UTC (rev 247757)
@@ -74,8 +74,6 @@
 - (void)_automationCapabilitiesDidChange WK_API_AVAILABLE(macos(10.12), ios(10.0));
 - (void)_setAutomationSession:(_WKAutomationSession *)automationSession WK_API_AVAILABLE(macos(10.12), ios(10.0));
 
-@property (nonatomic, copy, setter=_setJavaScriptConfigurationDirectory:) NSURL *_javaScriptConfigurationDirectory WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
-
 - (void)_addSupportedPlugin:(NSString *) domain named:(NSString *) name withMimeTypes: (NSSet<NSString *> *) mimeTypes withExtensions: (NSSet<NSString *> *) extensions WK_API_AVAILABLE(macos(10.14), ios(12.0));
 - (void)_clearSupportedPlugins WK_API_AVAILABLE(macos(10.14), ios(12.0));
 

Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h (247756 => 247757)


--- trunk/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h	2019-07-24 00:02:05 UTC (rev 247756)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h	2019-07-24 00:03:10 UTC (rev 247757)
@@ -45,6 +45,8 @@
 @property (nonatomic) NSUInteger wirelessContextIdentifier WK_API_DEPRECATED("Use of this API is no longer necessary and can be removed", ios(10.12, WK_IOS_TBA));
 #endif
 
+@property (nonatomic, nullable, copy) NSURL *_javascript_ConfigurationDirectory WK_API_AVAILABLE(macos(WK_MAC_TBA), ios(WK_IOS_TBA));
+
 // Network Process properties
 // FIXME: These should be be per-session/data store when we support multiple non-persistent sessions/data stores.
 

Modified: trunk/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm (247756 => 247757)


--- trunk/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm	2019-07-24 00:02:05 UTC (rev 247756)
+++ trunk/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm	2019-07-24 00:03:10 UTC (rev 247757)
@@ -110,6 +110,18 @@
     return _processPoolConfiguration->setAttrStyleEnabled(enabled);
 }
 
+- (NSURL *)_javascript_ConfigurationDirectory
+{
+    return [NSURL fileURLWithPath:_processPoolConfiguration->_javascript_ConfigurationDirectory() isDirectory:YES];
+}
+
+- (void)setJavaScriptConfigurationDirectory:(NSURL *)directory
+{
+    if (directory && ![directory isFileURL])
+        [NSException raise:NSInvalidArgumentException format:@"%@ is not a file URL", directory];
+    _processPoolConfiguration->setJavaScriptConfigurationDirectory(directory.path);
+}
+
 - (NSArray<NSURL *> *)additionalReadAccessAllowedURLs
 {
     auto paths = _processPoolConfiguration->additionalReadAccessAllowedPaths();

Modified: trunk/Source/WebKit/UIProcess/WebProcessPool.cpp (247756 => 247757)


--- trunk/Source/WebKit/UIProcess/WebProcessPool.cpp	2019-07-24 00:02:05 UTC (rev 247756)
+++ trunk/Source/WebKit/UIProcess/WebProcessPool.cpp	2019-07-24 00:03:10 UTC (rev 247757)
@@ -220,6 +220,7 @@
     configuration->setIndexedDBDatabaseDirectory(String(processPoolConfiguration.indexedDBDatabaseDirectory()));
     configuration->setResourceLoadStatisticsDirectory(String(processPoolConfiguration.resourceLoadStatisticsDirectory()));
     configuration->setNetworkCacheDirectory(String(processPoolConfiguration.diskCacheDirectory()));
+    configuration->setJavaScriptConfigurationDirectory(String(processPoolConfiguration._javascript_ConfigurationDirectory()));
 
     return configuration;
 }
@@ -892,9 +893,9 @@
         SandboxExtension::createHandleWithoutResolvingPath(parameters.mediaKeyStorageDirectory, SandboxExtension::Type::ReadWrite, parameters.mediaKeyStorageDirectoryExtensionHandle);
 
     
-    if (!m_javaScriptConfigurationDirectory.isEmpty())
-        parameters._javascript_ConfigurationDirectory = m_javaScriptConfigurationDirectory;
-    else if (_javascript_ConfigurationFileEnabled())
+    if (auto& directory = configuration()._javascript_ConfigurationDirectory(); !directory.isEmpty())
+        parameters._javascript_ConfigurationDirectory = directory;
+    if (_javascript_ConfigurationFileEnabled())
         parameters._javascript_ConfigurationDirectory = websiteDataStore.resolvedJavaScriptConfigurationDirectory();
     if (!parameters._javascript_ConfigurationDirectory.isEmpty())
         SandboxExtension::createHandleWithoutResolvingPath(parameters._javascript_ConfigurationDirectory, SandboxExtension::Type::ReadWrite, parameters._javascript_ConfigurationDirectoryExtensionHandle);

Modified: trunk/Source/WebKit/UIProcess/WebProcessPool.h (247756 => 247757)


--- trunk/Source/WebKit/UIProcess/WebProcessPool.h	2019-07-24 00:02:05 UTC (rev 247756)
+++ trunk/Source/WebKit/UIProcess/WebProcessPool.h	2019-07-24 00:03:10 UTC (rev 247757)
@@ -529,9 +529,6 @@
 
     void disableDelayedWebProcessLaunch() { m_isDelayedWebProcessLaunchDisabled = true; }
 
-    void setJavaScriptConfigurationDirectory(String&& directory) { m_javaScriptConfigurationDirectory = directory; }
-    const String& _javascript_ConfigurationDirectory() const { return m_javaScriptConfigurationDirectory; }
-    
 private:
     void platformInitialize();
 
@@ -729,7 +726,6 @@
 
     bool m_memoryCacheDisabled { false };
     bool m_javaScriptConfigurationFileEnabled { false };
-    String m_javaScriptConfigurationDirectory;
     bool m_alwaysRunsAtBackgroundPriority;
     bool m_shouldTakeUIBackgroundAssertion;
     bool m_shouldMakeNextWebProcessLaunchFailForTesting { false };

Modified: trunk/Tools/ChangeLog (247756 => 247757)


--- trunk/Tools/ChangeLog	2019-07-24 00:02:05 UTC (rev 247756)
+++ trunk/Tools/ChangeLog	2019-07-24 00:03:10 UTC (rev 247757)
@@ -1,3 +1,19 @@
+2019-07-23  Russell Epstein  <repst...@apple.com>
+
+        Unreviewed, rolling out r247745.
+
+        This broke API test
+        TestWebKitAPI.WKProcessPool._javascript_Configuration as
+        indicated by EWS
+
+        Reverted changeset:
+
+        "Move _javascript_ConfigurationDirectory SPI from
+        _WKProcessPoolConfiguration to WKProcessPoolPrivate to make it
+        runtime switchable"
+        https://bugs.webkit.org/show_bug.cgi?id=200045
+        https://trac.webkit.org/changeset/247745
+
 2019-07-23  Alex Christensen  <achristen...@webkit.org>
 
         Move _javascript_ConfigurationDirectory SPI from _WKProcessPoolConfiguration to WKProcessPoolPrivate to make it runtime switchable

Modified: trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm (247756 => 247757)


--- trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm	2019-07-24 00:02:05 UTC (rev 247756)
+++ trunk/Tools/TestWebKitAPI/Tests/WebKitCocoa/WKProcessPoolConfiguration.mm	2019-07-24 00:03:10 UTC (rev 247757)
@@ -84,7 +84,7 @@
     EXPECT_EQ([configuration suppressesConnectionTerminationOnSystemChange], [copy suppressesConnectionTerminationOnSystemChange]);
 }
 
-TEST(WKProcessPool, _javascript_Configuration)
+TEST(WKProcessPoolConfiguration, _javascript_Configuration)
 {
     NSFileManager *fileManager = [NSFileManager defaultManager];
     NSURL *tempDir = [NSURL fileURLWithPath:[NSTemporaryDirectory() stringByAppendingPathComponent:@"CustomPathsTest"] isDirectory:YES];
@@ -105,8 +105,12 @@
     BOOL result = [contents writeToURL:[tempDir URLByAppendingPathComponent:@"JSC.config"] atomically:YES];
     EXPECT_TRUE(result);
 
-    auto webView = adoptNS([[WKWebView alloc] init]);
-    [webView configuration].processPool._javaScriptConfigurationDirectory = tempDir;
+    auto poolConfiguration = adoptNS([[_WKProcessPoolConfiguration alloc] init]);
+    [poolConfiguration setJavaScriptConfigurationDirectory:tempDir];
+    auto webViewConfiguration = adoptNS([[WKWebViewConfiguration alloc] init]);
+    [webViewConfiguration setProcessPool:[[[WKProcessPool alloc] _initWithConfiguration:poolConfiguration.get()] autorelease]];
+
+    auto webView = adoptNS([[WKWebView alloc] initWithFrame:NSMakeRect(0, 0, 800, 600) configuration:webViewConfiguration.get()]);
     [webView loadHTMLString:@"<html>hello</html>" baseURL:[NSURL URLWithString:@"https://webkit.org/"]];
 
     NSString *path = [tempDir URLByAppendingPathComponent:@"Log.txt"].path;
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to