WebKit Bugzilla
Attachment 346278 Details for
Bug 188224
: REGRESSION(r234443): Revision caused 3 api failures across all platforms. (Requested by Truitt on #webkit).
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
ROLLOUT of r234443
bug-188224-20180801114444.patch (text/plain), 20.46 KB, created by
WebKit Commit Bot
on 2018-08-01 08:44:45 PDT
(
hide
)
Description:
ROLLOUT of r234443
Filename:
MIME Type:
Creator:
WebKit Commit Bot
Created:
2018-08-01 08:44:45 PDT
Size:
20.46 KB
patch
obsolete
>Subversion Revision: 234458 >diff --git a/Source/WebKit/ChangeLog b/Source/WebKit/ChangeLog >index 56cbdde79784b3773618da9f0603bc50ba44144f..7b97a4fcc8f735414c08c33fea1b3c86d16ced06 100644 >--- a/Source/WebKit/ChangeLog >+++ b/Source/WebKit/ChangeLog >@@ -1,3 +1,21 @@ >+2018-08-01 Commit Queue <commit-queue@webkit.org> >+ >+ Unreviewed, rolling out r234443 and r234445. >+ https://bugs.webkit.org/show_bug.cgi?id=188224 >+ >+ Revision caused 3 api failures across all platforms. >+ (Requested by Truitt on #webkit). >+ >+ Reverted changesets: >+ >+ "Add configuration for automatic process pre-warming" >+ https://bugs.webkit.org/show_bug.cgi?id=187108 >+ https://trac.webkit.org/changeset/234443 >+ >+ "Add configuration for automatic process pre-warming" >+ https://bugs.webkit.org/show_bug.cgi?id=187108 >+ https://trac.webkit.org/changeset/234445 >+ > 2018-08-01 Aditya Keerthi <akeerthi@apple.com> > > [iOS] WKColorPicker's selection indicator doesn't always cover the selected swatch >diff --git a/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.cpp b/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.cpp >index 8348e7c08a9dbb7290b35d3ed7d9d16464e77bbe..ec77348d4df2de27186d9f7fb598670cd8947473 100644 >--- a/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.cpp >+++ b/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.cpp >@@ -98,7 +98,6 @@ Ref<ProcessPoolConfiguration> ProcessPoolConfiguration::copy() > > copy->m_shouldHaveLegacyDataStore = this->m_shouldHaveLegacyDataStore; > copy->m_maximumProcessCount = this->m_maximumProcessCount; >- copy->m_maximumPrewarmedProcessCount = this->m_maximumPrewarmedProcessCount; > copy->m_cacheModel = this->m_cacheModel; > copy->m_diskCacheDirectory = this->m_diskCacheDirectory; > copy->m_diskCacheSpeculativeValidationEnabled = this->m_diskCacheSpeculativeValidationEnabled; >diff --git a/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.h b/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.h >index de0a1792e13ce2f11fb244b73fd9c8d72ccbedb9..053e91be2916875adb40937d025be94fe997af8c 100644 >--- a/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.h >+++ b/Source/WebKit/UIProcess/API/APIProcessPoolConfiguration.h >@@ -51,11 +51,8 @@ public: > void setShouldHaveLegacyDataStore(bool shouldHaveLegacyDataStore) { m_shouldHaveLegacyDataStore = shouldHaveLegacyDataStore; } > > unsigned maximumProcessCount() const { return m_maximumProcessCount; } >- void setMaximumProcessCount(unsigned maximumProcessCount) { m_maximumProcessCount = maximumProcessCount; } >+ void setMaximumProcessCount(unsigned maximumProcessCount) { m_maximumProcessCount = maximumProcessCount; } > >- unsigned maximumPrewarmedProcessCount() const { return m_maximumPrewarmedProcessCount; } >- void setMaximumPrewarmedProcessCount(unsigned maximumPrewarmedProcessCount) { m_maximumPrewarmedProcessCount = maximumPrewarmedProcessCount; } >- > bool diskCacheSpeculativeValidationEnabled() const { return m_diskCacheSpeculativeValidationEnabled; } > void setDiskCacheSpeculativeValidationEnabled(bool enabled) { m_diskCacheSpeculativeValidationEnabled = enabled; } > >@@ -161,7 +158,6 @@ private: > bool m_shouldHaveLegacyDataStore { false }; > > unsigned m_maximumProcessCount { 0 }; >- unsigned m_maximumPrewarmedProcessCount { 0 }; > bool m_diskCacheSpeculativeValidationEnabled { false }; > WebKit::CacheModel m_cacheModel { WebKit::CacheModelPrimaryWebBrowser }; > int64_t m_diskCacheSizeOverride { -1 }; >diff --git a/Source/WebKit/UIProcess/API/C/WKContext.cpp b/Source/WebKit/UIProcess/API/C/WKContext.cpp >index 4fca7eedb2f5882ec64094c7396351682c0fad31..8e20ee6786192f1edd970bc951cdfda4f51fdf34 100644 >--- a/Source/WebKit/UIProcess/API/C/WKContext.cpp >+++ b/Source/WebKit/UIProcess/API/C/WKContext.cpp >@@ -402,11 +402,6 @@ void WKContextSetCanHandleHTTPSServerTrustEvaluation(WKContextRef contextRef, bo > toImpl(contextRef)->setCanHandleHTTPSServerTrustEvaluation(value); > } > >-void WKContextSetMaximumNumberOfPrewarmedProcesses(WKContextRef contextRef, unsigned value) >-{ >- toImpl(contextRef)->setMaximumNumberOfPrewarmedProcesses(value); >-} >- > void WKContextSetDiskCacheSpeculativeValidationEnabled(WKContextRef contextRef, bool value) > { > toImpl(contextRef)->configuration().setDiskCacheSpeculativeValidationEnabled(value); >diff --git a/Source/WebKit/UIProcess/API/C/WKContextPrivate.h b/Source/WebKit/UIProcess/API/C/WKContextPrivate.h >index 218d0380e32fbbffc226b6d0a28f881d26468028..f08a43187cc2ee48e8cbabe4ad4c58f6fb730b99 100644 >--- a/Source/WebKit/UIProcess/API/C/WKContextPrivate.h >+++ b/Source/WebKit/UIProcess/API/C/WKContextPrivate.h >@@ -68,8 +68,6 @@ WK_EXPORT void WKContextRegisterURLSchemeAsCanDisplayOnlyIfCanRequest(WKContextR > WK_EXPORT void WKContextSetDomainRelaxationForbiddenForURLScheme(WKContextRef context, WKStringRef urlScheme); > > WK_EXPORT void WKContextSetCanHandleHTTPSServerTrustEvaluation(WKContextRef context, bool value); >- >-WK_EXPORT void WKContextSetMaximumNumberOfPrewarmedProcesses(WKContextRef context, unsigned count); > > WK_EXPORT void WKContextSetDiskCacheSpeculativeValidationEnabled(WKContextRef context, bool value); > >diff --git a/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h b/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h >index 706d661f2ea63f7d223963e61fb5686d238479aa..cfab13af7a02de3b89a5afdfc83d4fd0816d3489 100644 >--- a/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h >+++ b/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.h >@@ -35,7 +35,6 @@ WK_CLASS_AVAILABLE(macosx(10.10), ios(8.0)) > > @property (nonatomic, copy) NSURL *injectedBundleURL; > @property (nonatomic) NSUInteger maximumProcessCount; >-@property (nonatomic) NSInteger maximumPrewarmedProcessCount WK_API_AVAILABLE(macosx(WK_MAC_TBA), ios(WK_IOS_TBA)); > > @property (nonatomic) BOOL ignoreSynchronousMessagingTimeoutsForTesting WK_API_AVAILABLE(macosx(10.12), ios(10.0)); > >diff --git a/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm b/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm >index e2166df5732e316076c09476cff768d05f9f77a6..75c8b18d246608e7c152cb25b2ad9eabcb9be9a5 100644 >--- a/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm >+++ b/Source/WebKit/UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm >@@ -249,16 +249,6 @@ > return _processPoolConfiguration->processSwapsOnNavigation(); > } > >-- (void)setMaximumPrewarmedProcessCount:(NSInteger)count >-{ >- _processPoolConfiguration->setMaximumPrewarmedProcessCount(count); >-} >- >-- (NSInteger)maximumPrewarmedProcessCount >-{ >- return _processPoolConfiguration->maximumPrewarmedProcessCount(); >-} >- > - (void)setAlwaysKeepAndReuseSwappedProcesses:(BOOL)swaps > { > _processPoolConfiguration->setAlwaysKeepAndReuseSwappedProcesses(swaps); >diff --git a/Source/WebKit/UIProcess/WebPageProxy.cpp b/Source/WebKit/UIProcess/WebPageProxy.cpp >index c898c8769cf52975e0c6fc0eff258bf7ed925689..cc5786faae20d1e1d5473f7b514e35a211dae795 100644 >--- a/Source/WebKit/UIProcess/WebPageProxy.cpp >+++ b/Source/WebKit/UIProcess/WebPageProxy.cpp >@@ -3781,8 +3781,6 @@ void WebPageProxy::didFinishLoadForFrame(uint64_t frameID, uint64_t navigationID > m_pageClient.didFinishLoadForMainFrame(); > > resetRecentCrashCountSoon(); >- >- notifyProcessPoolToPrewarm(); > } > > m_isLoadingAlternateHTMLStringForFailingProvisionalLoad = false; >@@ -3922,8 +3920,10 @@ void WebPageProxy::didFirstVisuallyNonEmptyLayoutForFrame(uint64_t frameID, cons > > m_loaderClient->didFirstVisuallyNonEmptyLayoutForFrame(*this, *frame, m_process->transformHandlesToObjects(userData.object()).get()); > >- if (frame->isMainFrame()) >+ if (frame->isMainFrame()) { > m_pageClient.didFirstVisuallyNonEmptyLayoutForMainFrame(); >+ notifyProcessPoolToPrewarm(); >+ } > } > > void WebPageProxy::didLayoutForCustomContentProvider() >diff --git a/Source/WebKit/UIProcess/WebProcessPool.cpp b/Source/WebKit/UIProcess/WebProcessPool.cpp >index b2fa44359c4f078c20eecb731d13325915f76a5e..f2159ce1c0a5c5b895cac1813da4a0e015d0d514 100644 >--- a/Source/WebKit/UIProcess/WebProcessPool.cpp >+++ b/Source/WebKit/UIProcess/WebProcessPool.cpp >@@ -403,20 +403,11 @@ void WebProcessPool::setLegacyCustomProtocolManagerClient(std::unique_ptr<API::C > void WebProcessPool::setMaximumNumberOfProcesses(unsigned maximumNumberOfProcesses) > { > // Guard against API misuse. >- if (m_processes.size() != m_prewarmedProcessCount) >+ if (!m_processes.isEmpty()) > CRASH(); > > m_configuration->setMaximumProcessCount(maximumNumberOfProcesses); > } >- >-void WebProcessPool::setMaximumNumberOfPrewarmedProcesses(unsigned maximumNumberOfProcesses) >-{ >- // Guard against API misuse. >- if (m_processes.size()) >- CRASH(); >- >- m_configuration->setMaximumPrewarmedProcessCount(maximumNumberOfProcesses); >-} > > IPC::Connection* WebProcessPool::networkingProcessConnection() > { >@@ -1002,7 +993,7 @@ void WebProcessPool::initializeNewWebProcess(WebProcessProxy& process, WebsiteDa > > void WebProcessPool::warmInitialProcess() > { >- if (m_prewarmedProcessCount >= maximumNumberOfPrewarmedProcesses()) { >+ if (m_prewarmedProcessCount) { > ASSERT(!m_processes.isEmpty()); > return; > } >@@ -1318,11 +1309,12 @@ void WebProcessPool::postMessageToInjectedBundle(const String& messageName, API: > > void WebProcessPool::didReachGoodTimeToPrewarm() > { >+ if (!m_configuration->processSwapsOnNavigation()) >+ return; > if (!m_websiteDataStore) > m_websiteDataStore = API::WebsiteDataStore::defaultDataStore().ptr(); >- >- unsigned maxPrewarmed = maximumNumberOfPrewarmedProcesses(); >- while (m_prewarmedProcessCount < maxPrewarmed) >+ static constexpr size_t maxPrewarmCount = 1; >+ while (m_prewarmedProcessCount < maxPrewarmCount) > createNewWebProcess(m_websiteDataStore->websiteDataStore(), WebProcessProxy::IsInPrewarmedPool::Yes); > } > >diff --git a/Source/WebKit/UIProcess/WebProcessPool.h b/Source/WebKit/UIProcess/WebProcessPool.h >index 5494be2df94e116649c105d7aa63b16938f04fcb..9d7a99ff500b392a1f9ad22692d5ed28b98aa7e2 100644 >--- a/Source/WebKit/UIProcess/WebProcessPool.h >+++ b/Source/WebKit/UIProcess/WebProcessPool.h >@@ -155,9 +155,6 @@ public: > > void setMaximumNumberOfProcesses(unsigned); // Can only be called when there are no processes running. > unsigned maximumNumberOfProcesses() const { return !m_configuration->maximumProcessCount() ? UINT_MAX : m_configuration->maximumProcessCount(); } >- >- void setMaximumNumberOfPrewarmedProcesses(unsigned); // Can only be called when there are no processes running. >- unsigned maximumNumberOfPrewarmedProcesses() const { return m_configuration->maximumPrewarmedProcessCount(); } > > const Vector<RefPtr<WebProcessProxy>>& processes() const { return m_processes; } > >diff --git a/Tools/ChangeLog b/Tools/ChangeLog >index 5f732e2befd59c77e816f5a0bb58623459502dd3..a791a98aa5c77674e7f69744a6f45c47f18fc5df 100644 >--- a/Tools/ChangeLog >+++ b/Tools/ChangeLog >@@ -1,3 +1,21 @@ >+2018-08-01 Commit Queue <commit-queue@webkit.org> >+ >+ Unreviewed, rolling out r234443 and r234445. >+ https://bugs.webkit.org/show_bug.cgi?id=188224 >+ >+ Revision caused 3 api failures across all platforms. >+ (Requested by Truitt on #webkit). >+ >+ Reverted changesets: >+ >+ "Add configuration for automatic process pre-warming" >+ https://bugs.webkit.org/show_bug.cgi?id=187108 >+ https://trac.webkit.org/changeset/234443 >+ >+ "Add configuration for automatic process pre-warming" >+ https://bugs.webkit.org/show_bug.cgi?id=187108 >+ https://trac.webkit.org/changeset/234445 >+ > 2018-07-31 Ben Richards <benton_richards@apple.com> > > Add configuration for automatic process pre-warming >diff --git a/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj b/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj >index 02ae00c303071a02032d9d9000d2cb5a9c78529c..ac532418009ad463f111939c8ce1bfdb8079284f 100644 >--- a/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj >+++ b/Tools/TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj >@@ -154,7 +154,6 @@ > 3FCC4FE81EC4E8CA0076E37C /* PictureInPictureDelegate.html in Copy Resources */ = {isa = PBXBuildFile; fileRef = 3FCC4FE61EC4E87E0076E37C /* PictureInPictureDelegate.html */; }; > 4135FB842011FAA700332139 /* InjectInternals_Bundle.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 4135FB832011FAA300332139 /* InjectInternals_Bundle.cpp */; }; > 4135FB852011FABF00332139 /* libWebCoreTestSupport.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 4135FB862011FABF00332139 /* libWebCoreTestSupport.dylib */; }; >- 41882F0321010C0D002FF288 /* SetMaximumPrewarmedProcessCount.mm in Sources */ = {isa = PBXBuildFile; fileRef = 41882F0221010A70002FF288 /* SetMaximumPrewarmedProcessCount.mm */; }; > 4433A396208044140091ED57 /* SynchronousTimeoutTests.mm in Sources */ = {isa = PBXBuildFile; fileRef = 4433A395208044130091ED57 /* SynchronousTimeoutTests.mm */; }; > 44817A2F1F0486BF00003810 /* WKRequestActivatedElementInfo.mm in Sources */ = {isa = PBXBuildFile; fileRef = 44817A2E1F0486BF00003810 /* WKRequestActivatedElementInfo.mm */; }; > 448D7E471EA6C55500ECC756 /* EnvironmentUtilitiesTest.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 448D7E451EA6C55500ECC756 /* EnvironmentUtilitiesTest.cpp */; }; >@@ -1392,7 +1391,6 @@ > 3FCC4FE61EC4E87E0076E37C /* PictureInPictureDelegate.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = PictureInPictureDelegate.html; sourceTree = "<group>"; }; > 4135FB832011FAA300332139 /* InjectInternals_Bundle.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = InjectInternals_Bundle.cpp; path = Tests/InjectInternals_Bundle.cpp; sourceTree = SOURCE_ROOT; }; > 4135FB862011FABF00332139 /* libWebCoreTestSupport.dylib */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.dylib"; path = libWebCoreTestSupport.dylib; sourceTree = BUILT_PRODUCTS_DIR; }; >- 41882F0221010A70002FF288 /* SetMaximumPrewarmedProcessCount.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = SetMaximumPrewarmedProcessCount.mm; sourceTree = "<group>"; }; > 41973B5A1AF2286A006C7B36 /* FileSystem.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = FileSystem.cpp; sourceTree = "<group>"; }; > 41973B5C1AF22875006C7B36 /* SharedBuffer.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SharedBuffer.cpp; sourceTree = "<group>"; }; > 440A1D3814A0103A008A66F2 /* URL.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = URL.cpp; sourceTree = "<group>"; }; >@@ -2337,7 +2335,6 @@ > F4D2986D20FEE7370092D636 /* RunScriptAfterDocumentLoad.mm */, > CE0947362063223B003C9BA0 /* SchemeRegistry.mm */, > 51EB12931FDF050500A5A1BD /* ServiceWorkerBasic.mm */, >- 41882F0221010A70002FF288 /* SetMaximumPrewarmedProcessCount.mm */, > 37BCA61B1B596BA9002012CA /* ShouldOpenExternalURLsInNewWindowActions.mm */, > 2D9A53AE1B31FA8D0074D5AA /* ShrinkToFit.mm */, > 2DFF7B6C1DA487AF00814614 /* SnapshotStore.mm */, >@@ -3866,7 +3863,6 @@ > 51EB12941FDF052500A5A1BD /* ServiceWorkerBasic.mm in Sources */, > 7CCE7ECB1A411A7E00447C4C /* SetAndUpdateCacheModel.mm in Sources */, > 7CCE7ECC1A411A7E00447C4C /* SetDocumentURI.mm in Sources */, >- 41882F0321010C0D002FF288 /* SetMaximumPrewarmedProcessCount.mm in Sources */, > CE6E81A020A6935F00E2C80F /* SetTimeoutFunction.mm in Sources */, > 7C83E0521D0A641800FEBCF3 /* SharedBuffer.cpp in Sources */, > A17991881E1C994E00A505ED /* SharedBuffer.mm in Sources */, >diff --git a/Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm b/Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm >index aa0dab253d8201c74e38d98e26feec1af3ae3e7f..ef4f85c2f9dd203d36487c338741d8d34aea2c96 100644 >--- a/Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm >+++ b/Tools/TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm >@@ -282,7 +282,6 @@ TEST(ProcessSwap, Basic) > { > auto processPoolConfiguration = adoptNS([[_WKProcessPoolConfiguration alloc] init]); > processPoolConfiguration.get().processSwapsOnNavigation = YES; >- processPoolConfiguration.get().maximumPrewarmedProcessCount = 1; > auto processPool = adoptNS([[WKProcessPool alloc] _initWithConfiguration:processPoolConfiguration.get()]); > > auto webViewConfiguration = adoptNS([[WKWebViewConfiguration alloc] init]); >@@ -901,7 +900,6 @@ TEST(ProcessSwap, NumberOfPrewarmedProcesses) > { > auto processPoolConfiguration = adoptNS([[_WKProcessPoolConfiguration alloc] init]); > [processPoolConfiguration setProcessSwapsOnNavigation:YES]; >- [processPoolConfiguration setMaximumPrewarmedProcessCount:1]; > auto processPool = adoptNS([[WKProcessPool alloc] _initWithConfiguration:processPoolConfiguration.get()]); > > auto webViewConfiguration = adoptNS([[WKWebViewConfiguration alloc] init]); >@@ -1092,7 +1090,7 @@ TEST(ProcessSwap, DisableForInspector) > auto webViewConfiguration = adoptNS([[WKWebViewConfiguration alloc] init]); > [webViewConfiguration setProcessPool:processPool.get()]; > webViewConfiguration.get().preferences._developerExtrasEnabled = YES; >- >+ > RetainPtr<PSONScheme> handler = adoptNS([[PSONScheme alloc] init]); > [webViewConfiguration setURLSchemeHandler:handler.get() forURLScheme:@"PSON1"]; > [webViewConfiguration setURLSchemeHandler:handler.get() forURLScheme:@"PSON2"]; >@@ -1477,7 +1475,7 @@ TEST(ProcessSwap, APIControlledProcessSwapping) > TestWebKitAPI::Util::run(&done); > done = false; > auto pid3 = [webView _webProcessIdentifier]; >- >+ > EXPECT_EQ(3, numberOfDecidePolicyCalls); > EXPECT_EQ(2u, seenPIDs.size()); > EXPECT_NE(pid1, pid3); >diff --git a/Tools/TestWebKitAPI/Tests/WebKitCocoa/SetMaximumPrewarmedProcessCount.mm b/Tools/TestWebKitAPI/Tests/WebKitCocoa/SetMaximumPrewarmedProcessCount.mm >deleted file mode 100644 >index 5cfa9d50c0e1ba7b8c0ad2497558b566ad1d35b7..0000000000000000000000000000000000000000 >--- a/Tools/TestWebKitAPI/Tests/WebKitCocoa/SetMaximumPrewarmedProcessCount.mm >+++ /dev/null >@@ -1,60 +0,0 @@ >-/* >- * Copyright (C) 2018 Apple Inc. All rights reserved. >- * >- * Redistribution and use in source and binary forms, with or without >- * modification, are permitted provided that the following conditions >- * are met: >- * 1. Redistributions of source code must retain the above copyright >- * notice, this list of conditions and the following disclaimer. >- * 2. Redistributions in binary form must reproduce the above copyright >- * notice, this list of conditions and the following disclaimer in the >- * documentation and/or other materials provided with the distribution. >- * >- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >- * THE POSSIBILITY OF SUCH DAMAGE. >- */ >- >-#import "config.h" >- >-#import "PlatformUtilities.h" >-#import "Test.h" >-#import <WebKit/WKProcessPoolPrivate.h> >-#import <WebKit/_WKProcessPoolConfiguration.h> >-#import <wtf/RetainPtr.h> >- >-#if WK_API_ENABLED >- >-TEST(WKProcessPool, SetMaximumPrewarmedProcessCount) >-{ >- auto processPoolConfiguration = adoptNS([[_WKProcessPoolConfiguration alloc] init]); >- [processPoolConfiguration setMaximumPrewarmedProcessCount:2]; >- auto processPool = adoptNS([[WKProcessPool alloc] _initWithConfiguration:processPoolConfiguration.get()]); >- >- EXPECT_EQ(0u, [processPool _prewarmedWebProcessCount]); >- >- [processPool _warmInitialProcess]; >- >- EXPECT_EQ(1u, [processPool _prewarmedWebProcessCount]); >- >- [processPool _warmInitialProcess]; >- >- EXPECT_EQ(2u, [processPool _prewarmedWebProcessCount]); >- >- [processPool _warmInitialProcess]; >- >- EXPECT_EQ(2u, [processPool _prewarmedWebProcessCount]); >- >- // Test to make sure this doesn't cause a crash >- [processPool _setMaximumNumberOfProcesses:50]; >-} >- >-#endif
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 188224
: 346278