Timeline
Sep 17, 2018:
- 11:36 PM Changeset in webkit [236102] by
-
- 2 edits in trunk/Source/WebKit
Unreviewed build fix after r236101.
- UIProcess/WebResourceLoadStatisticsStore.cpp:
(WebKit::WebResourceLoadStatisticsStore::flushAndDestroyPersistentStore):
Correct a BinarySemaphore::wait() call which now accepts no arguments.
- 10:47 PM Changeset in webkit [236101] by
-
- 28 edits1 add in trunk
[WTF] Use Semaphore and BinarySemaphore instead of dispatch_semaphore_t
https://bugs.webkit.org/show_bug.cgi?id=185339
Patch by Yusuke Suzuki <Yusuke Suzuki> on 2018-09-17
Reviewed by Mark Lam.
Source/WebCore:
- fileapi/ThreadableBlobRegistry.cpp:
(WebCore::ThreadableBlobRegistry::blobSize):
- platform/cocoa/NetworkExtensionContentFilter.h:
- platform/cocoa/NetworkExtensionContentFilter.mm:
(WebCore::NetworkExtensionContentFilter::initialize):
(WebCore::NetworkExtensionContentFilter::willSendRequest):
(WebCore::NetworkExtensionContentFilter::responseReceived):
(WebCore::NetworkExtensionContentFilter::addData):
(WebCore::NetworkExtensionContentFilter::finishedAddingData):
(WebCore::NetworkExtensionContentFilter::handleDecision):
Use per-function BinarySemaphore instead of holding it in NetworkExtensionContentFilter's field.
- platform/glib/FileMonitorGLib.cpp:
(WebCore::FileMonitor::FileMonitor):
(WebCore::FileMonitor::~FileMonitor):
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
(WebCore::MediaPlayerPrivateAVFoundationObjC::~MediaPlayerPrivateAVFoundationObjC):
(WebCore::MediaPlayerPrivateAVFoundationObjC::waitForVideoOutputMediaDataWillChange):
(WebCore::MediaPlayerPrivateAVFoundationObjC::outputMediaDataWillChange):
Use BinarySemaphore. And remove unused dispatch_semaphore_t.
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
- platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(-[WebAVStreamDataParserListener streamDataParserWillProvideContentKeyRequestInitializationData:forTrackID:]):
(-[WebAVStreamDataParserListener streamDataParser:didProvideContentKeyRequestInitializationData:forTrackID:]):
(WebCore::SourceBufferPrivateAVFObjC::SourceBufferPrivateAVFObjC):
(WebCore::SourceBufferPrivateAVFObjC::~SourceBufferPrivateAVFObjC):
(WebCore::SourceBufferPrivateAVFObjC::didProvideContentKeyRequestInitializationDataForTrackID):
(WebCore::SourceBufferPrivateAVFObjC::abort):
(WebCore::SourceBufferPrivateAVFObjC::setCDMSession):
(WebCore::SourceBufferPrivateAVFObjC::setCDMInstance):
Use Box<Semaphore> and Box<BinarySemaphore>.
- platform/graphics/cocoa/WebCoreDecompressionSession.h:
- platform/graphics/cocoa/WebCoreDecompressionSession.mm:
(WebCore::WebCoreDecompressionSession::WebCoreDecompressionSession):
Remove unused dispatch_semaphore_t.
- platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::platformLoadResourceSynchronously):
- platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp:
(WebCore::getRunLoop):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willSendRequest):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::didReceiveResponse):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::willCacheResponse):
(WebCore::ResourceHandleCFURLConnectionDelegateWithOperationQueue::canRespondToProtectionSpace):
- platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.h:
- platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm:
(-[WebCoreResourceHandleAsOperationQueueDelegate initWithHandle:messageQueue:]):
(-[WebCoreResourceHandleAsOperationQueueDelegate detachHandle]):
(-[WebCoreResourceHandleAsOperationQueueDelegate dealloc]):
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:willSendRequest:redirectResponse:]):
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:canAuthenticateAgainstProtectionSpace:]):
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:didReceiveResponse:]):
(-[WebCoreResourceHandleAsOperationQueueDelegate connection:willCacheResponse:]):
Use BinarySemaphore instead.
Source/WebKit:
- Platform/IPC/Connection.cpp:
(IPC::Connection::SyncMessageState::wait):
- Shared/mac/SecItemShim.cpp:
(WebKit::sendSecItemRequest):
Use BinarySemaphore.
- UIProcess/ResourceLoadStatisticsPersistentStorage.cpp:
(WebKit::ResourceLoadStatisticsPersistentStorage::finishAllPendingWorkSynchronously):
- UIProcess/WebStorage/StorageManager.cpp:
(WebKit::StorageManager::applicationWillTerminate):
- UIProcess/ios/WKActionSheetAssistant.mm:
(appLinkForURL):
Use BinarySemaphore to wait for async completion handler. We also fix memory leak
since the old code does not call dispatch_release for the used semaphore.
Source/WTF:
This patch adds WTF::Semaphore, which is based on WTF::Lock and WTF::Condition.
- WTF.xcodeproj/project.pbxproj:
- wtf/CMakeLists.txt:
- wtf/Semaphore.h: Added.
(WTF::Semaphore::Semaphore):
(WTF::Semaphore::signal):
(WTF::Semaphore::waitUntil):
(WTF::Semaphore::waitFor):
(WTF::Semaphore::wait):
- wtf/generic/WorkQueueGeneric.cpp:
(WorkQueue::platformInitialize):
- wtf/threads/BinarySemaphore.cpp:
(WTF::BinarySemaphore::waitUntil):
(WTF::BinarySemaphore::wait): Deleted.
- wtf/threads/BinarySemaphore.h:
(WTF::BinarySemaphore::waitFor):
(WTF::BinarySemaphore::wait):
Align the names of the functions to WTF::Condition.
Add BinarySemaphore::wait(), which is the same to waitUntil(WallTime::infinity()).
Tools:
- TestWebKitAPI/Tests/WTF/SynchronizedFixedQueue.cpp:
(TestWebKitAPI::ToUpperConverter::stopProducing):
(TestWebKitAPI::ToUpperConverter::stopConsuming):
- 9:14 PM Changeset in webkit [236100] by
-
- 7 edits in trunk
Many modern media control tests leak documents in testing
https://bugs.webkit.org/show_bug.cgi?id=189437
Reviewed by Darin Adler.
Source/WebCore:
In order to accurately detect leaks in media controls tests which use lots of
SVGImages, we have to:
- Fire a zero-delay timer after the postTask, in order for ImagesLoader's m_derefElementTimer to clear references to elements.
- Have releaseCriticalMemory() call CachedResourceLoader's garbageCollectDocumentResources() to drop the last handle to the CachedResource for an SVGImage.
- Call WKBundleReleaseMemory() after the GC and timer, since we need garbageCollectDocumentResources() to run again after that timer has fired.
This should fix most of the spurious leak reports involving SVGImage documents.
- page/MemoryRelease.cpp:
(WebCore::releaseCriticalMemory):
Source/WebKit:
In order to accurately detect leaks in media controls tests which use lots of
SVGImages, we have to:
- Fire a zero-delay timer after the postTask, in order for ImagesLoader's m_derefElementTimer to clear references to elements.
- Have releaseCriticalMemory() call CachedResourceLoader's garbageCollectDocumentResources() to drop the last handle to the CachedResource for an SVGImage.
- Call WKBundleReleaseMemory() after the GC and timer, since we need garbageCollectDocumentResources() to run again after that timer has fired.
This should fix most of the spurious leak reports involving SVGImage documents.
- WebProcess/InjectedBundle/API/c/WKBundlePage.cpp:
(WKBundlePageCallAfterTasksAndTimers):
(WKBundlePagePostTask): Deleted.
- WebProcess/InjectedBundle/API/c/WKBundlePage.h:
Tools:
In order to accurately detect leaks in media controls tests which use lots of
SVGImages, we have to:
- Fire a zero-delay timer after the postTask, in order for ImagesLoader's m_derefElementTimer to clear references to elements.
- Have releaseCriticalMemory() call CachedResourceLoader's garbageCollectDocumentResources() to drop the last handle to the CachedResource for an SVGImage.
- Call WKBundleReleaseMemory() after the GC and timer, since we need garbageCollectDocumentResources() to run again after that timer has fired.
This should fix most of the spurious leak reports involving SVGImage documents.
- WebKitTestRunner/InjectedBundle/InjectedBundle.cpp:
(WTR::InjectedBundle::reportLiveDocuments):
(WTR::InjectedBundle::didReceiveMessageToPage):
- 7:54 PM Changeset in webkit [236099] by
-
- 3 edits in trunk/Source/WebKitLegacy/win
[Win][Clang][WebKitLegacy] error: cannot pass object of non-trivial type through variadic function
https://bugs.webkit.org/show_bug.cgi?id=189612
Reviewed by Alex Christensen.
Non-trivial types can't be used as aruguments of LOG_ERROR and
ASSERT_WITH_MESSAGE.
- DefaultPolicyDelegate.cpp:
(DefaultPolicyDelegate::unableToImplementPolicyWithError): Apply
static_cast<BSTR> to convert BString.
- WebLocalizableStrings.cpp:
(copyLocalizedStringFromBundle): Convert 'key' from WTF::String to
char* by using 'key.utf8().data()'.
- 6:42 PM Changeset in webkit [236098] by
-
- 2 edits in trunk/Source/WebKit
Try to fix Apple internal builds with the iOS 12.0 SDK.
- Configurations/WebKit.xcconfig: Disable framework header postprocessing for iOS 12.0.
- 6:01 PM Changeset in webkit [236097] by
-
- 2 edits1 delete in trunk/Source/WebKit
Unreviewed, rolling out r236092 because it breaks internal builds. Also, remove stray '+' character from ChangeLog file.
- Scripts/copy-webcontent-resources-to-private-headers.sh: Removed.
- WebKit.xcodeproj/project.pbxproj:
- 5:54 PM Changeset in webkit [236096] by
-
- 2 edits in trunk/LayoutTests
Layout Test legacy-animation-engine/animations/play-state-in-shorthand.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=185651
Unreviewed test gardening.
- platform/mac/TestExpectations: Mark test as flaky.
- 5:31 PM Changeset in webkit [236095] by
-
- 2538 edits in trunk/LayoutTests
Updated expected test [ PASS ] messages for new test-harness format for webgl tests
https://bugs.webkit.org/show_bug.cgi?id=189677
Reviewed by Dean Jackson.
Update generate-webgl-tests.py's test expectation template
for my new version of webgl-test-harness.js for the webgl 2 suite,
and update all webgl/2.0.0 test expectations to match.
- webgl/resources/webgl-expectation-template.txt:
- webgl/2.0.0/.../*expected.txt: Modified all *expected.txts to match.
- 4:24 PM Changeset in webkit [236094] by
-
- 15 edits9 adds in trunk
Add support for HEVC codec types in Media Capabilities
https://bugs.webkit.org/show_bug.cgi?id=189565
Reviewed by Eric Carlson.
Source/WebCore:
Test: media/hevc-codec-parameters.html
Add some utility methods for parsing HEVC codec strings, and using those parsed
values to query the platform for detailed support for HEVC decoding.
Drive-by fix: Modify MediaEngineConfigurationFactory to allow for null function
pointers in the encode/decode factory pair.
- Sources.txt:
- SourcesCocoa.txt:
- WebCore.xcodeproj/project.pbxproj:
- platform/cocoa/VideoToolboxSoftLink.cpp:
- platform/cocoa/VideoToolboxSoftLink.h:
- platform/graphics/HEVCUtilities.cpp: Added.
(WebCore::parseHEVCCodecParameters):
- platform/graphics/HEVCUtilities.h: Added.
- platform/graphics/cocoa/HEVCUtilitiesCocoa.cpp: Added.
(WebCore::validateHEVCParameters):
- platform/graphics/cocoa/HEVCUtilitiesCocoa.h: Added.
- platform/graphics/cocoa/MediaEngineConfigurationFactoryCocoa.cpp: Added.
(WebCore::videoCodecTypeFromRFC4281Type):
(WebCore::createMediaPlayerDecodingConfigurationCocoa):
- platform/graphics/cocoa/MediaEngineConfigurationFactoryCocoa.h: Added.
- platform/mediacapabilities/MediaEngineConfigurationFactory.cpp:
(WebCore::factories):
(WebCore::MediaEngineConfigurationFactory::createDecodingConfiguration):
(WebCore::MediaEngineConfigurationFactory::createEncodingConfiguration):
- testing/Internals.cpp:
(WebCore::Internals::parseHEVCCodecParameters):
- testing/Internals.h:
- testing/Internals.idl:
Source/WTF:
Extract the toIntegralType template into its own header.
- wtf/CMakeLists.txt:
- wtf/text/StringConversion.h: Added.
(isCharacterAllowedInBase):
(toIntegralType):
- wtf/text/WTFString.cpp:
LayoutTests:
- media/hevc-codec-parameters-expected.txt: Added.
- media/hevc-codec-parameters.html: Added.
- 4:21 PM Changeset in webkit [236093] by
-
- 2 edits in trunk/Source/ThirdParty/libwebrtc
Build fix after https://trac.webkit.org/changeset/236070
https://bugs.webkit.org/show_bug.cgi?id=189635
<rdar://problem/44361849>
Unreviewed.
Fix for iOS internal builds.
- Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoEncoderH264.mm:
(-[RTCVideoEncoderH264 resetCompressionSessionWithPixelFormat:]):
- 4:00 PM Changeset in webkit [236092] by
-
- 2 edits1 add in trunk/Source/WebKit
+2018-08-17 Ben Richards <benton_richards@apple.com>
Add script to generate WebContent service resource files and change XPC service main SPI to have it's own header
https://bugs.webkit.org/show_bug.cgi?id=188601
Reviewed by Dan Bernstein.
Added a script to the process entitlements build phase of the WebContent service that copies resource
files to WebKit.framework/PrivateHeaders/CustomWebContentResources. These resource files are to
be used by clients who would like to make a custom WebContent service.
- Scripts/copy-webcontent-resources-to-private-headers.sh: Added.
- WebKit.xcodeproj/project.pbxproj:
- 3:43 PM Changeset in webkit [236091] by
-
- 16 edits in trunk
Web Inspector: generate CSSKeywordCompletions from backend values
https://bugs.webkit.org/show_bug.cgi?id=189041
Reviewed by Joseph Pecoraro.
Source/JavaScriptCore:
- inspector/protocol/CSS.json:
Include an optional
aliasesarray andinheritedboolean forCSSPropertyInfo.
Source/WebCore:
Modified existing test inspector/css/getSupportedCSSProperties.html.
- inspector/agents/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::getSupportedCSSProperties):
Send alias and longhand information for all properties, and any known keyword values for
those applicable. This makes use ofCSSParserFastPaths::isValidKeywordPropertyAndValueto
determine if a given keyword is a valid value for each property. This only generates a list
for properties who have no non-keyword values.
- css/makeprop.pl:
- css/makevalues.pl:
Create additional helper functions/constants for retrieving strings of each CSS keyword.
- css/CSSProperty.h:
(WebCore::CSSProperty::aliasesForProperty):
- css/CSSPrimitiveValue.cpp:
(WebCore::valueName):
- css/CSSValuePool.cpp:
(WebCore::CSSValuePool::CSSValuePool):
(WebCore::CSSValuePool::createIdentifierValue):
Source/WebInspectorUI:
Moves the longhands map to
WI.CSSKeywordCompletionsfor more global access. Creates an
aliases map to support completions on aliases with the same values as the non-alias name.
Removes all keyword-only properties fromWI.CSSKeywordCompletions._propertyKeywordMapas
they are now generated by the backend (kept for compatibility).
- UserInterface/Models/CSSCompletions.js:
(WI.CSSCompletions):
(WI.CSSCompletions.requestCSSCompletions.propertyNamesCallback):
(WI.CSSCompletions.prototype.isShorthandPropertyName):
- UserInterface/Models/CSSKeywordCompletions.js:
(WI.CSSKeywordCompletions.forProperty.addKeywordsForName): Added.
(WI.CSSKeywordCompletions.forProperty):
(WI.CSSKeywordCompletions.addCustomCompletions):
- UserInterface/Models/CSSProperty.js:
(WI.CSSProperty.isInheritedPropertyName):
LayoutTests:
- inspector/css/getSupportedCSSProperties-expected.txt:
- inspector/css/getSupportedCSSProperties.html:
- 3:22 PM Changeset in webkit [236090] by
-
- 5 edits2 adds in trunk
track.onmute isn't called for a remote MediaStreamTrack when its counter part track is removed from the peer connection
https://bugs.webkit.org/show_bug.cgi?id=176281
<rdar://problem/44525674>
Reviewed by Eric Carlson.
Source/WebCore:
Listen to libwebrtc remove track callbacks.
Implement handling as per https://w3c.github.io/webrtc-pc/#process-remote-track-removal.
This triggers a mute event on the track.
Test: webrtc/remove-track.html
- Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp:
(WebCore::LibWebRTCMediaEndpoint::removeRemoteTrack):
(WebCore::LibWebRTCMediaEndpoint::OnRemoveTrack):
- Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h:
- Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp:
(WebCore::LibWebRTCPeerConnectionBackend::shouldOfferAllowToReceive const):
Drive by fix: Plan B code path does not mandate having an rtc backend for each sender.
LayoutTests:
- webrtc/remove-track-expected.txt: Added.
- webrtc/remove-track.html: Added.
- 3:21 PM Changeset in webkit [236089] by
-
- 4 edits1 add in trunk
We must convert ProfileType to CheckStructureOrEmpty instead of CheckStructure
https://bugs.webkit.org/show_bug.cgi?id=189676
<rdar://problem/39682897>
Reviewed by Michael Saboff.
JSTests:
- typeProfiler/check-structure-or-empty-in-fixup.js: Added.
(A):
(K):
(i.catch):
Source/JavaScriptCore:
Because the incoming value may be TDZ, CheckStructure may end up crashing.
Since the Type Profile does not currently record TDZ values in any of its
data structures, this is not a semantic change in how it will show you data.
It just fixes crashes when we emit a CheckStructure and the incoming value
is TDZ.
- dfg/DFGFixupPhase.cpp:
(JSC::DFG::FixupPhase::fixupNode):
- dfg/DFGNode.h:
(JSC::DFG::Node::convertToCheckStructureOrEmpty):
- 3:05 PM Changeset in webkit [236088] by
-
- 5 edits in trunk/Source
Add more Fullscreen logging
https://bugs.webkit.org/show_bug.cgi?id=189656
Reviewed by Jer Noble.
Add some fullscreen logging so I can tell whether WebFullScreenManager ever releases
the fullscreen element.
Source/WebCore:
- platform/cocoa/VideoFullscreenModelVideoElement.mm:
(VideoFullscreenModelVideoElement::VideoFullscreenModelVideoElement):
(VideoFullscreenModelVideoElement::~VideoFullscreenModelVideoElement):
(VideoFullscreenModelVideoElement::setVideoElement):
Source/WebKit:
- WebProcess/FullScreen/WebFullScreenManager.cpp:
(WebKit::WebFullScreenManager::WebFullScreenManager):
(WebKit::WebFullScreenManager::videoControlsManagerDidChange):
(WebKit::WebFullScreenManager::setPIPStandbyElement):
(WebKit::WebFullScreenManager::enterFullScreenForElement):
(WebKit::WebFullScreenManager::exitFullScreenForElement):
(WebKit::WebFullScreenManager::willEnterFullScreen):
(WebKit::WebFullScreenManager::didEnterFullScreen):
(WebKit::WebFullScreenManager::willExitFullScreen):
(WebKit::WebFullScreenManager::didExitFullScreen):
(WebKit::WebFullScreenManager::close):
- WebProcess/FullScreen/WebFullScreenManager.h:
- 3:05 PM Changeset in webkit [236087] by
-
- 7 edits in trunk/Source/WebCore
Add support for dumping the GraphicsLayer tree via notifyutil
https://bugs.webkit.org/show_bug.cgi?id=189639
Reviewed by Zalan Bujtas.
Make "notifyutil -p com.apple.WebKit.showGraphicsLayerTree" work. It dumps the GraphicsLayer tree
for each top-level document (GraphicsLayers are connected across frame boundaries, so this prints
the entire tree for each main frame).
It uses WTFLogAlways rather than fprintf() so output shows on all platforms (other tree dumps should
be converted in the same way).
- page/mac/PageMac.mm:
(WebCore::Page::platformInitialize):
- platform/graphics/GraphicsLayer.cpp:
(showGraphicsLayerTree):
- rendering/RenderLayerCompositor.cpp:
(showGraphicsLayerTreeForCompositor):
- rendering/RenderLayerCompositor.h:
- rendering/RenderObject.cpp:
(WebCore::printGraphicsLayerTreeForLiveDocuments):
- rendering/RenderObject.h:
- 2:59 PM Changeset in webkit [236086] by
-
- 4 edits in trunk/Source/WebKit
Swipe snapshot can get stuck if swiping is disabled while it is visible
https://bugs.webkit.org/show_bug.cgi?id=189667
<rdar://problem/40367780>
Reviewed by Simon Fraser.
If navigation gestures are disabled while a swipe snapshot is visible,
WKWebView will tear down the ViewGestureController, which means that
the SnapshotRemovalTracker will no longer be around to ever remove
the snapshot.
It's currently very hard to write a test for this because we have
yet to come up with a good mechanism for testing swiping on iOS.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView setAllowsBackForwardNavigationGestures:]):
Instead of tearing down the ViewGestureController when navigation
gestures are disabled, just set a bit on it that disables gestures.
- UIProcess/Cocoa/ViewGestureController.cpp:
(WebKit::ViewGestureController::canSwipeInDirection const):
- UIProcess/Cocoa/ViewGestureController.h:
(WebKit::ViewGestureController::setSwipeGestureEnabled):
(WebKit::ViewGestureController::isSwipeGestureEnabled):
Add a bit to ViewGestureController that makes starting new gestures
always fail, but allows e.g. snapshots from existing swipes to continue
their usual behavior.
- 2:41 PM Changeset in webkit [236085] by
-
- 5 edits in trunk/Source/WebCore
[Curl] Add schema version and enable auto vacuum for cookie database.
https://bugs.webkit.org/show_bug.cgi?id=189669
Reviewed by Alex Christensen.
Turning on auto incremental vacuuming and adding versioning to the database. Right now we
reset tables if there's an unknown schema or if the none is set. There is placeholder logic
in place to upgrade databases as the schema changes in the future.
Tested by checking the database manually after launching MiniBrowser.
- platform/network/curl/CookieJarDB.cpp:
(WebCore::CookieJarDB::openDatabase):
(WebCore::CookieJarDB::verifySchemaVersion):
(WebCore::CookieJarDB::deleteAllTables):
(WebCore::CookieJarDB::createPrepareStatement):
(WebCore::CookieJarDB::getPrepareStatement):
(WebCore::CookieJarDB::executeSimpleSql):
- platform/network/curl/CookieJarDB.h:
- platform/network/curl/NetworkStorageSessionCurl.cpp:
(WebCore::defaultSession):
- platform/sql/SQLiteDatabase.cpp:
(WebCore::SQLiteDatabase::turnOnIncrementalAutoVacuum): fixed a bug.
- 2:14 PM Changeset in webkit [236084] by
-
- 2 edits in trunk/LayoutTests
Fixed typo in TestExpectations file.
https://bugs.webkit.org/show_bug.cgi?id=188020.
Unreviewed test gardening.
Patch by Dawei Fenton <realdawei@apple.com> on 2018-09-17
- platform/ios/TestExpectations:
- 2:07 PM Changeset in webkit [236083] by
-
- 2 edits in trunk/Source/WebCore
Re-order Node flags based on semantics
https://bugs.webkit.org/show_bug.cgi?id=189643
Reviewed by Simon Fraser.
Re-ordered Node flags based on their category and subclasses of Node which use them.
- dom/Node.h:
- 1:50 PM Changeset in webkit [236082] by
-
- 7 copies1 add in releases/Apple/watchOS 5.0
Added a tag for watchOS 5.0.
- 1:50 PM Changeset in webkit [236081] by
-
- 8 copies1 add in releases/Apple/iOS 12.0
Added a tag for iOS 12.0.
- 1:50 PM Changeset in webkit [236080] by
-
- 9 copies1 add in releases/Apple/Safari 12.0
Added a tag for Safari 12.0.
- 1:36 PM Changeset in webkit [236079] by
-
- 2 edits in trunk/Source/WebKit
Expose WKWebProcess.h as a private header
https://bugs.webkit.org/show_bug.cgi?id=189636
- WebKit.xcodeproj/project.pbxproj:
- 12:39 PM Changeset in webkit [236078] by
-
- 4 edits in trunk/Source/WebCore
Add more ResourceLoading logging, particularly in MemoryCache code
https://bugs.webkit.org/show_bug.cgi?id=189651
Reviewed by Tim Horton.
Adding more logging to the ResourceLoading log channel, which I found useful
when trying to understand cached SVGImage lifetimes (bug 189437).
- loader/cache/CachedResource.cpp:
(WebCore::CachedResource::deleteIfPossible):
- loader/cache/CachedResourceLoader.cpp:
(WebCore::CachedResourceLoader::requestResource):
(WebCore::CachedResourceLoader::garbageCollectDocumentResources):
- loader/cache/MemoryCache.cpp:
(WebCore::MemoryCache::add):
(WebCore::MemoryCache::pruneLiveResourcesToSize):
(WebCore::MemoryCache::pruneDeadResources):
(WebCore::MemoryCache::pruneDeadResourcesToSize):
(WebCore::MemoryCache::remove):
(WebCore::MemoryCache::dumpLRULists const):
- 11:57 AM Changeset in webkit [236077] by
-
- 9 edits1 move2 deletes in trunk
Enable USE_MEDIAREMOTE on iOS
https://bugs.webkit.org/show_bug.cgi?id=189096
Reviewed by Eric Carlson.
Source/WebCore:
Migrate to using MediaRemote.framework on iOS from MediaPlayer.framework. This unifies the
Now Playing implementation on iOS and Mac.
- SourcesCocoa.txt:
- WebCore.xcodeproj/project.pbxproj:
- platform/audio/cocoa/MediaSessionManagerCocoa.cpp: Removed.
- platform/audio/cocoa/MediaSessionManagerCocoa.h:
- platform/audio/cocoa/MediaSessionManagerCocoa.mm: Renamed from Source/WebCore/platform/audio/mac/MediaSessionManagerMac.mm.
(PlatformMediaSessionManager::sharedManager):
(PlatformMediaSessionManager::sharedManagerIfExists):
(MediaSessionManagerCocoa::updateSessionState):
(MediaSessionManagerCocoa::beginInterruption):
(MediaSessionManagerCocoa::scheduleUpdateNowPlayingInfo):
(MediaSessionManagerCocoa::sessionWillBeginPlayback):
(MediaSessionManagerCocoa::sessionDidEndRemoteScrubbing):
(MediaSessionManagerCocoa::removeSession):
(MediaSessionManagerCocoa::sessionWillEndPlayback):
(MediaSessionManagerCocoa::clientCharacteristicsChanged):
(MediaSessionManagerCocoa::sessionCanProduceAudioChanged):
(MediaSessionManagerCocoa::nowPlayingEligibleSession):
(MediaSessionManagerCocoa::updateNowPlayingInfo):
- platform/audio/ios/MediaSessionManagerIOS.h:
(): Deleted.
- platform/audio/ios/MediaSessionManagerIOS.mm:
(WebCore::MediaSessionManageriOS::nowPlayingEligibleSession): Deleted.
(WebCore::MediaSessionManageriOS::updateNowPlayingInfo): Deleted.
(WebCore::MediaSessionManageriOS::sessionWillBeginPlayback): Deleted.
(WebCore::MediaSessionManageriOS::removeSession): Deleted.
(WebCore::MediaSessionManageriOS::sessionWillEndPlayback): Deleted.
(WebCore::MediaSessionManageriOS::clientCharacteristicsChanged): Deleted.
- platform/audio/mac/MediaSessionManagerMac.h: Removed.
Source/WTF:
- wtf/Platform.h:
- 11:49 AM Changeset in webkit [236076] by
-
- 2 edits in trunk/Source/ThirdParty/libwebrtc
Enable VCP for iOS and reenable it for MacOS
https://bugs.webkit.org/show_bug.cgi?id=189635
<rdar://problem/43621029>
Unreviewed, build fix for iOS simulator.
- Source/webrtc/sdk/WebKit/VideoProcessingSoftLink.h:
- 11:45 AM Changeset in webkit [236075] by
-
- 9 edits4 adds in trunk/Source/WebKit
Expose XPCServiceMain in a WebProcess header rather than WKProcessPool
https://bugs.webkit.org/show_bug.cgi?id=189636
Patch by Alex Christensen <achristensen@webkit.org> on 2018-09-17
Reviewed by Dan Bernstein.
Fix a few build failures along the way.
- PluginProcess/mac/PluginControllerProxyMac.mm:
(WebKit::PluginControllerProxy::windowAndViewFramesChanged):
(WebKit::PluginControllerProxy::updateLayerHostingContext):
- PluginProcess/mac/PluginProcessMac.mm:
(WebKit::replacedNSWorkspace_launchApplicationAtURL_options_configuration_error):
(WebKit::PluginProcess::platformInitializeProcess):
- Shared/EntryPointUtilities/mac/XPCService/XPCServiceEntryPoint.h:
- Shared/EntryPointUtilities/mac/XPCService/XPCServiceMain.mm:
(WebKit::XPCServiceMain):
(main):
- SourcesCocoa.txt:
- UIProcess/API/Cocoa/WKProcessPool.mm:
(+[WKProcessPool _webContentProcessXPCMain]): Deleted.
- UIProcess/API/Cocoa/WKProcessPoolPrivate.h:
- WebKit.xcodeproj/project.pbxproj:
- WebProcess/API: Added.
- WebProcess/API/Cocoa: Added.
- WebProcess/API/Cocoa/WKWebProcess.cpp: Added.
(WKWebProcessMain):
- WebProcess/API/Cocoa/WKWebProcess.h: Added.
- WebProcess/WebPage/mac/WKAccessibilityWebPageObjectMac.mm:
(-[WKAccessibilityWebPageObject convertScreenPointToRootView:]):
(-[WKAccessibilityWebPageObject accessibilityAttributeValue:]):
(-[WKAccessibilityWebPageObject accessibilityHitTest:]):
- 11:24 AM Changeset in webkit [236074] by
-
- 6 edits in trunk/Source
Build error in ImageBufferCG when compiled with IOSurfacePool
https://bugs.webkit.org/show_bug.cgi?id=189579
Patch by Frederic Wang <fwang@igalia.com> on 2018-09-17
Reviewed by Tim Horton.
IOSurface.h might be included with different value of IOSURFACE_CANVAS_BACKING_STORE, causing
compilation errors when files in the same unified source do not agree on the definition.
This patch moves the definition of IOSURFACE_CANVAS_BACKING_STORE from ImageBufferDataCG.h
to Platform.h so that IOSURFACE_CANVAS_BACKING_STORE is set to the same value in all files.
Finally some minors changes to explicitly declare/define ImageBuffer are performed in order
to prevent future issues with Unified build rotating.
Source/WebCore:
No new tests, behavior unchanged.
- html/HTMLCanvasElement.cpp: Explicitly include ImageBuffer.h since it's used in this file.
- platform/graphics/cg/ImageBufferDataCG.h: Move definition into Platform.h.
- platform/graphics/cocoa/IOSurface.h: Forward-declare ImageBuffer since it's used in this
header.
Source/WTF:
- wtf/Platform.h: Move definition from ImageBufferDataCG.h.
- 11:19 AM Changeset in webkit [236073] by
-
- 12 edits in trunk
[Curl] Respond with requested authentication scheme for authentication challenge.
https://bugs.webkit.org/show_bug.cgi?id=189318
Reviewed by Alex Christensen.
Source/WebCore:
Curl port depends on libcurl's authentication handling by enabling CURLAUTH_ANY. With this
mode, the round-trip communication between the client and the server is handled by libcurl
internally. That's okay for many cases. But when initial request has a credentials
(i.e. XMLHttpRequest), there's no valid chance to store credential to the storage because
the returned response is not 401.
Passes following tests:
- http/tests/websocket/tests/hybi/httponly-cookie.pl
- http/tests/websocket/tests/hybi/secure-cookie-insecure-connection.pl
- http/tests/websocket/tests/hybi/secure-cookie-secure-connection.pl
- http/tests/xmlhttprequest/basic-auth-default.html
- http/tests/xmlhttprequest/cross-origin-authorization.html
- http/tests/xmlhttprequest/logout.html
- http/tests/xmlhttprequest/null-auth.php
- http/tests/xmlhttprequest/re-login-async.html
- http/tests/xmlhttprequest/re-login.html
- http/tests/xmlhttprequest/redirect-credentials-responseURL.html
- http/tests/xmlhttprequest/remember-bad-password.html
- platform/network/ResourceHandle.h:
- platform/network/curl/CurlContext.cpp:
(WebCore::CurlHandle::setHttpAuthUserPass):
(WebCore::CurlHandle::enableHttpAuthentication): Deleted.
- platform/network/curl/CurlContext.h:
- platform/network/curl/CurlRequest.cpp:
(WebCore::CurlRequest::setAuthenticationScheme):
(WebCore::CurlRequest::setupTransfer):
- platform/network/curl/CurlRequest.h:
- platform/network/curl/ResourceHandleCurl.cpp:
(WebCore::ResourceHandle::start):
(WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
(WebCore::ResourceHandle::receivedCredential):
(WebCore::ResourceHandle::getCredential):
(WebCore::ResourceHandle::restartRequestWithCredential):
(WebCore::ResourceHandle::platformLoadResourceSynchronously):
(WebCore::ResourceHandle::continueAfterWillSendRequest):
Source/WebKit:
Curl port depends on libcurl's authentication handling by enabling CURLAUTH_ANY. With this
mode, the round-trip communication between the client and the server is handled by libcurl
internally. That's okay for many cases. But when initial request has a credentials
(i.e. XMLHttpRequest), there's no valid chance to store credential to the storage because
the returned response is not 401.
- NetworkProcess/curl/NetworkDataTaskCurl.cpp:
(WebKit::NetworkDataTaskCurl::NetworkDataTaskCurl):
(WebKit::NetworkDataTaskCurl::willPerformHTTPRedirection):
(WebKit::NetworkDataTaskCurl::tryHttpAuthentication):
(WebKit::NetworkDataTaskCurl::tryProxyAuthentication):
(WebKit::NetworkDataTaskCurl::restartWithCredential):
- NetworkProcess/curl/NetworkDataTaskCurl.h:
LayoutTests:
- platform/wincairo/TestExpectations:
- 10:37 AM Changeset in webkit [236072] by
-
- 3 edits in trunk/LayoutTests
[Web Animations] Positive delays of accelerated animations are not respected
https://bugs.webkit.org/show_bug.cgi?id=189411
<rdar://problem/44151416>
Reviewed by Dean Jackson.
Use a mask over the animated rectangle to allow for a 1px rounding error when seeking to fix flakiness.
- webanimations/accelerated-animation-with-delay-and-seek-expected.html:
- webanimations/accelerated-animation-with-delay-and-seek.html:
- 10:18 AM Changeset in webkit [236071] by
-
- 2 edits in trunk/Source/WebKit
Clear pending resource load statistics' writes after tests
https://bugs.webkit.org/show_bug.cgi?id=189632
<rdar://problem/44469275>
Patch by Woodrow Wang <woodrow_wang@apple.com> on 2018-09-17
Reviewed by Chris Dumez.
- UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
(WKWebsiteDataStoreStatisticsResetToConsistentState):
- 10:15 AM Changeset in webkit [236070] by
-
- 20 edits in trunk
Enable VCP for iOS and reenable it for MacOS
https://bugs.webkit.org/show_bug.cgi?id=189635
<rdar://problem/43621029>
Reviewed by Eric Carlson.
Source/ThirdParty/libwebrtc:
Make sure VCP API is used to set encoding session parameters.
- Source/webrtc/sdk/WebKit/VideoProcessingSoftLink.h:
- Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/RTCVideoEncoderH264.mm:
(-[RTCVideoEncoderH264 resetCompressionSessionWithPixelFormat:]):
- Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/helpers.cc:
- Source/webrtc/sdk/objc/Framework/Classes/VideoToolbox/helpers.h:
Source/WebCore:
Covered by exsiting and modified tests.
Instead of using libwebrtc YUV frames for black frames, use CVPixelBuffer to make it efficient.
Add internal API to know whether VCP is enabled so as to make capture-webrtc test pass on all platforms.
- platform/mediastream/RealtimeOutgoingVideoSource.cpp:
(WebCore::RealtimeOutgoingVideoSource::sendBlackFramesIfNeeded):
- platform/mediastream/RealtimeOutgoingVideoSource.h:
- platform/mediastream/gstreamer/RealtimeOutgoingVideoSourceLibWebRTC.h:
- platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.h:
- platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.mm:
(WebCore::createBlackPixelBuffer):
(WebCore::RealtimeIncomingVideoSourceCocoa::pixelBufferFromVideoFrame):
- platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.cpp:
(WebCore::RealtimeOutgoingVideoSourceCocoa::createBlackFrame):
- platform/mediastream/mac/RealtimeOutgoingVideoSourceCocoa.h:
- testing/Internals.cpp:
(WebCore::Internals::supportsVCPEncoder):
- testing/Internals.h:
- testing/Internals.idl:
LayoutTests:
- platform/mac/webrtc/captureCanvas-webrtc-software-encoder.html:
For platforms suppporting VCP, arbitrary size should be supported.
- webrtc/routines.js:
- 10:15 AM Changeset in webkit [236069] by
-
- 19 edits in trunk
PSON: window.open() with 'noopener' should only process-swap cross-site, not cross-origin
https://bugs.webkit.org/show_bug.cgi?id=189602
<rdar://problem/44430549>
Reviewed by Geoff Garen.
Source/WebCore:
- loader/DocumentLoader.cpp:
(WebCore::DocumentLoader::setTriggeringAction):
- loader/DocumentLoader.h:
- loader/FrameLoadRequest.h:
- loader/FrameLoader.cpp:
(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::loadWithNavigationAction):
(WebCore::FrameLoader::loadWithDocumentLoader):
(WebCore::FrameLoader::loadPostRequest):
(WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
(WebCore::FrameLoader::loadDifferentDocumentItem):
Move NavigationAction's opener setting to loadWithNavigationAction() as this is a better bottleneck.
Otherwise, we'd have to set it at several call sites. Also move the NavigationAction around instead
of copying it.
- loader/FrameLoader.h:
(WebCore::FrameLoader::loadWithNavigationAction):
- loader/NavigationAction.h:
(WebCore::NavigationAction::setShouldOpenExternalURLsPolicy):
- loader/PolicyChecker.cpp:
(WebCore::PolicyChecker::checkNavigationPolicy):
- page/DOMWindow.cpp:
(WebCore::DOMWindow::createWindow):
Source/WebKit:
The following fixes were made to our process swap on navigation logic:
- Browsing contexts opened via window.open() with 'noopener' option now only same if they are cross-site, instead of doing a stricter cross-origin check.
- Support process swapping when opening a new window via <a target="_blank" rel="noopener"> that is cross-site.
In order to support this, the following changes were made:
- Stop passing a 'isCrossOriginWindowOpenNavigation' flag to the UIProcess when navigating because:
- This is specific to window.open() and does not apply to other windows opened by DOM
- This forces the origin check to happens on WebContent process side instead of relying on the one in WebProcessPool in the UIProcess
- Pass the origin of the requester to the UIProcess when navigating, so that the WebProcessPool can use the requester's host for the cross-site check for the initial navigation in a new window created by DOM.
- Add 2 flags to WebPageProxy which indicate if the page was created by the DOM and if any provisional loads have been committed. The WebProcessPool uses theses flags to recognize initial loads in new windows created by the DOM, so that it uses the requester's origin for the cross-site check.
- Shared/NavigationActionData.cpp:
(WebKit::NavigationActionData::encode const):
(WebKit::NavigationActionData::decode):
- Shared/NavigationActionData.h:
- UIProcess/API/APINavigation.h:
(API::Navigation::setRequesterOrigin):
(API::Navigation::requesterOrigin const):
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::continueNavigationInNewProcess):
(WebKit::WebPageProxy::didCommitLoadForFrame):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
(WebKit::WebPageProxy::createNewPage):
- UIProcess/WebPageProxy.h:
(WebKit::WebPageProxy::setOpenedByDOM):
(WebKit::WebPageProxy::openedByDOM const):
(WebKit::WebPageProxy::hasCommittedAnyProvisionalLoads const):
- UIProcess/WebProcessPool.cpp:
(WebKit::shouldUseSameProcessBasedOnURLs):
(WebKit::WebProcessPool::processForNavigationInternal):
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
(WebKit::WebFrameLoaderClient::dispatchDecidePolicyForNavigationAction):
Tools:
Add API test coverage.
- TestWebKitAPI/Tests/WebKitCocoa/ProcessSwapOnNavigation.mm:
- 10:11 AM Changeset in webkit [236068] by
-
- 4 edits2 deletes in trunk
Revert https://trac.webkit.org/r235910, because the new test times out.
Crash under PlatformPopupMenuData::encode when interacting with a select menu that has variable fonts
https://bugs.webkit.org/show_bug.cgi?id=188008
Source/WebKit:
- Shared/cf/ArgumentCodersCF.cpp:
(IPC::encode):
(IPC::decode):
LayoutTests:
- fast/text/variations/ipc2-expected.txt: Removed.
- fast/text/variations/ipc2.html: Removed.
- platform/mac-wk1/TestExpectations:
- 10:09 AM Changeset in webkit [236067] by
-
- 9 edits in trunk/Source/WebKit
Refactoring related to Safe Browsing
https://bugs.webkit.org/show_bug.cgi?id=189631
Patch by Alex Christensen <achristensen@webkit.org> on 2018-09-17
Reviewed by Tim Horton.
Make SafeBrowsingResult RefCounted.
Move logic from an unnamed lambda to WebPageProxy::receivedNavigationPolicyDecision.
- UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::beginSafeBrowsingCheck):
(WebKit::WebPageProxy::contentFilterDidBlockLoadForFrame): Deleted.
(WebKit::WebPageProxy::addPlatformLoadParameters): Deleted.
(WebKit::WebPageProxy::createSandboxExtensionsIfNeeded): Deleted.
(WebKit::WebPageProxy::startDrag): Deleted.
(WebKit::WebPageProxy::setPromisedDataForImage): Deleted.
(WebKit::WebPageProxy::setDragCaretRect): Deleted.
(WebKit::WebPageProxy::platformRegisterAttachment): Deleted.
(WebKit::WebPageProxy::platformCloneAttachment): Deleted.
- UIProcess/SafeBrowsingResult.h:
(WebKit::SafeBrowsingResult::create):
- UIProcess/WebFramePolicyListenerProxy.cpp:
(WebKit::WebFramePolicyListenerProxy::didReceiveSafeBrowsingResults):
- UIProcess/WebFramePolicyListenerProxy.h:
- UIProcess/WebFrameProxy.cpp:
(WebKit::WebFrameProxy::setUpPolicyListenerProxy):
- UIProcess/WebFrameProxy.h:
- UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::receivedNavigationPolicyDecision):
(WebKit::WebPageProxy::decidePolicyForNavigationAction):
(WebKit::WebPageProxy::decidePolicyForNewWindowAction):
(WebKit::WebPageProxy::decidePolicyForResponse):
- UIProcess/WebPageProxy.h:
- 9:54 AM Changeset in webkit [236066] by
-
- 17 edits in trunk/Source
Use OpaqueJSString rather than JSRetainPtr inside WebKit
https://bugs.webkit.org/show_bug.cgi?id=189652
Reviewed by Saam Barati.
Source/JavaScriptCore:
- API/JSCallbackObjectFunctions.h: Removed an uneeded include of
JSStringRef.h.
- API/JSContext.mm:
(-[JSContext evaluateScript:withSourceURL:]): Use OpaqueJSString::create rather
than JSStringCreateWithCFString, simplifying the code and also obviating the
need for explicit JSStringRelease.
(-[JSContext setName:]): Ditto.
- API/JSStringRef.cpp:
(JSStringIsEqualToUTF8CString): Use adoptRef rather than explicit JSStringRelease.
It seems that additional optimization is possible, obviating the need to allocate
an OpaqueJSString, but that's true almost everywhere else in this patch, too.
- API/JSValue.mm:
(+[JSValue valueWithNewRegularExpressionFromPattern:flags:inContext:]): Use
OpaqueJSString::create and adoptRef as appropriate.
(+[JSValue valueWithNewErrorFromMessage:inContext:]): Ditto.
(+[JSValue valueWithNewSymbolFromDescription:inContext:]): Ditto.
(performPropertyOperation): Ditto.
(-[JSValue invokeMethod:withArguments:]): Ditto.
(valueToObjectWithoutCopy): Ditto.
(containerValueToObject): Ditto.
(valueToString): Ditto.
(objectToValueWithoutCopy): Ditto.
(objectToValue): Ditto.
Source/WebCore:
- Modules/plugins/QuickTimePluginReplacement.mm:
(WebCore::jsValueWithDictionaryInContext): Use OpaqueJSString::create.
(WebCore::jsValueWithAVMetadataItemInContext): Use adoptCF.
- platform/mac/SerializedPlatformRepresentationMac.mm:
(WebCore::jsValueWithDictionaryInContext): Use OpaqueJSString::create.
Source/WebKit:
- Shared/API/c/WKString.cpp: Removed unneeded include of JSStringRef.h.
- WebProcess/Automation/WebAutomationSessionProxy.cpp: Removed unneeded
include of JSRetainPtr.
(WebKit::toJSString): Deleted.
(WebKit::toJSValue): Use OpaqueJSString::create.
(WebKit::callPropertyFunction): Ditto.
(WebKit::evaluate): Use adoptRef.
(WebKit::evaluateJavaScriptCallback): Ditto.
(WebKit::WebAutomationSessionProxy::scriptObjectForFrame):
Use OpaqueJSString::create.
(WebKit::WebAutomationSessionProxy::evaluateJavaScriptFunction): Use
String rather than JSStringRef.
- WebProcess/Plugins/PDF/PDFPlugin.mm: Removed unneeded includes.
(WebKit::PDFPlugin::runScriptsInPDFDocument): Use OpaqueJSString::create.
Source/WebKitLegacy/ios:
- WebView/WebPDFViewIOS.mm:
(-[WebPDFView finishedLoadingWithDataSource:]): Use OpaqueJSString::create.
- WebView/WebPDFViewPlaceholder.mm:
(-[WebPDFViewPlaceholder _evaluateJSForDocument:]): Ditto.
Source/WebKitLegacy/mac:
- WebView/WebPDFRepresentation.mm:
(-[WebPDFRepresentation finishedLoadingWithDataSource:]): Use OpaqueJSString::create.
- 9:41 AM Changeset in webkit [236065] by
-
- 2 edits in trunk/LayoutTests
Layout Test imported/w3c/web-platform-tests/2dcontext/imagebitmap/createImageBitmap-drawImage.html is a flaky failure.
https://bugs.webkit.org/show_bug.cgi?id=188020.
Unreviewed test gardening.
Patch by Dawei Fenton <realdawei@apple.com> on 2018-09-17
- platform/ios/TestExpectations:
- 8:04 AM Changeset in webkit [236064] by
-
- 2 edits in trunk/LayoutTests
[WPE] Add new failure
Unreviewed gardening.
- platform/wpe/TestExpectations:
- 7:36 AM Changeset in webkit [236063] by
-
- 4 edits in trunk/LayoutTests
[GTK][WPE] Update baseline for fast/dom/navigator-detached-no-crash
In GTK it's just a matter of updating the baseline. In WPE
there's some JS output that just needs to be ignored.
- platform/gtk/TestExpectations:
- platform/gtk/fast/dom/navigator-detached-no-crash-expected.txt:
- platform/wpe/TestExpectations:
- 7:09 AM Changeset in webkit [236062] by
-
- 2 edits in trunk/LayoutTests
[WPE] Mark crashing animations test.
animations/play-state-start-paused.html crashing.
Unreviewed gardening.
- platform/wpe/TestExpectations:
- 6:42 AM Changeset in webkit [236061] by
-
- 7 edits1 add in releases/WebKitGTK/webkit-2.22
[JSC] Array.prototype.reverse modifies JSImmutableButterfly
https://bugs.webkit.org/show_bug.cgi?id=188794
Reviewed by Saam Barati.
JSTests:
- stress/reverse-with-immutable-butterfly.js: Added.
(shouldBe):
(reverseInt):
(reverseDouble):
(reverseContiguous):
Source/JavaScriptCore:
While Array.prototype.reverse modifies the butterfly of the given Array,
it does not account JSImmutableButterfly case. So it accidentally modifies
the content of JSImmutableButterfly.
This patch converts CoW arrays to writable arrays before reversing.
- runtime/ArrayPrototype.cpp:
(JSC::arrayProtoFuncReverse):
- runtime/JSObject.h:
(JSC::JSObject::ensureWritable):
- 5:45 AM WebKitGTK/2.22.x edited by
- Add a few items for WPE noted by Pablo Saavedra (diff)
- 5:23 AM Changeset in webkit [236060] by
-
- 2 edits in trunk/LayoutTests
[WPE] Unmark now passing tests
Unreviewed gardening.
- platform/wpe/TestExpectations:
- 5:07 AM Changeset in webkit [236059] by
-
- 2 edits in trunk/LayoutTests
[GTK] Unmark now passing tests.
Unreviewed gardening.
- platform/gtk/TestExpectations:
- 5:03 AM Changeset in webkit [236058] by
-
- 7 edits in releases/WebKitGTK/webkit-2.22/Source
Merge r235355 - Shrink size of XMLHttpRequest
https://bugs.webkit.org/show_bug.cgi?id=188944
Reviewed by Saam Barati.
Source/WebCore:
Shrink the size of XMLHttpRequest by packing bits and reordering members.
It reduces the size from 1248 to 1176.
No behavior change.
- xml/XMLHttpRequest.cpp:
(WebCore::XMLHttpRequest::XMLHttpRequest):
(WebCore::XMLHttpRequest::responseText):
(WebCore::XMLHttpRequest::createResponseBlob):
(WebCore::XMLHttpRequest::createResponseArrayBuffer):
(WebCore::XMLHttpRequest::setResponseType):
(WebCore::XMLHttpRequest::changeState):
(WebCore::XMLHttpRequest::callReadyStateChangeListener):
(WebCore::XMLHttpRequest::setWithCredentials):
(WebCore::XMLHttpRequest::open):
(WebCore::XMLHttpRequest::prepareToSend):
(WebCore::XMLHttpRequest::createRequest):
(WebCore::XMLHttpRequest::abort):
(WebCore::XMLHttpRequest::overrideMimeType):
(WebCore::XMLHttpRequest::setRequestHeader):
(WebCore::XMLHttpRequest::getAllResponseHeaders const):
(WebCore::XMLHttpRequest::getResponseHeader const):
(WebCore::XMLHttpRequest::status const):
(WebCore::XMLHttpRequest::statusText const):
(WebCore::XMLHttpRequest::didFinishLoading):
(WebCore::XMLHttpRequest::createDecoder const):
(WebCore::XMLHttpRequest::didReceiveData):
(WebCore::XMLHttpRequest::didReachTimeout):
(WebCore::XMLHttpRequest::readyState const): Deleted.
- xml/XMLHttpRequest.h:
(WebCore::XMLHttpRequest::responseType const):
(WebCore::XMLHttpRequest::readyState const):
- xml/XMLHttpRequestProgressEventThrottle.cpp:
(WebCore::XMLHttpRequestProgressEventThrottle::XMLHttpRequestProgressEventThrottle):
- xml/XMLHttpRequestProgressEventThrottle.h:
Source/WTF:
StringBuilder is included in XMLHttpRequest. We reduce the size of StringBuilder too
by reordering members.
- wtf/text/StringBuilder.h:
(WTF::StringBuilder::StringBuilder):
- 5:03 AM Changeset in webkit [236057] by
-
- 4 edits in releases/WebKitGTK/webkit-2.22/Source/WebCore
Merge r235345 - Make IDBCursor::m_request a WeakPtr
https://bugs.webkit.org/show_bug.cgi?id=188938
Reviewed by Alex Christensen.
Make m_request a WeakPtr so that if m_request is destroyed, the related cursor will not use the invalid pointer.
Covered by existing tests.
- Modules/indexeddb/IDBCursor.cpp:
(WebCore::IDBCursor::continuePrimaryKey): Other continue and advance methods that are calling uncheckedIterateCursor do check for m_request.
Apply the same check for continuePrimaryKey.
(WebCore::IDBCursor::uncheckedIterateCursor):
- Modules/indexeddb/IDBCursor.h:
(WebCore::IDBCursor::setRequest):
(WebCore::IDBCursor::clearRequest):
(WebCore::IDBCursor::request):
- Modules/indexeddb/IDBRequest.h:
- 5:02 AM Changeset in webkit [236056] by
-
- 10 edits in releases/WebKitGTK/webkit-2.22/Source/WebCore
Merge r235344 - IDBCursor does not need to be an ActiveDOMObject
https://bugs.webkit.org/show_bug.cgi?id=188937
Reviewed by Alex Christensen.
Remove ActiveDOMObject from IDBCursor IDL.
Update constructors and call sites accordingly.
This allows removing m_outstandingRequestCount and related code in IDBRequest.
Covered by existing tests.
- Modules/indexeddb/IDBCursor.cpp:
(WebCore::IDBCursor::create):
(WebCore::IDBCursor::IDBCursor):
(WebCore::IDBCursor::update):
(WebCore::IDBCursor::uncheckedIterateCursor):
(WebCore::IDBCursor::deleteFunction):
(WebCore::IDBCursor::activeDOMObjectName const): Deleted.
(WebCore::IDBCursor::canSuspendForDocumentSuspension const): Deleted.
(WebCore::IDBCursor::hasPendingActivity const): Deleted.
(WebCore::IDBCursor::decrementOutstandingRequestCount): Deleted.
- Modules/indexeddb/IDBCursor.h:
- Modules/indexeddb/IDBCursor.idl:
- Modules/indexeddb/IDBCursorWithValue.cpp:
(WebCore::IDBCursorWithValue::create):
(WebCore::IDBCursorWithValue::IDBCursorWithValue):
- Modules/indexeddb/IDBCursorWithValue.h:
- Modules/indexeddb/IDBCursorWithValue.idl:
- Modules/indexeddb/IDBRequest.cpp:
(WebCore::IDBRequest::setSource):
(WebCore::IDBRequest::dispatchEvent):
(WebCore::IDBRequest::willIterateCursor):
(WebCore::IDBRequest::didOpenOrIterateCursor):
- Modules/indexeddb/IDBRequest.h:
- Modules/indexeddb/IDBTransaction.cpp:
(WebCore::IDBTransaction::requestOpenCursor):
- WebCore.xcodeproj/project.pbxproj:
- 5:02 AM Changeset in webkit [236055] by
-
- 2 edits in releases/WebKitGTK/webkit-2.22/Source/WTF
Merge r235336 - Improve unified source generator script logging and error messages
https://bugs.webkit.org/show_bug.cgi?id=188932
Reviewed by Simon Fraser.
- Scripts/generate-unified-source-bundles.rb:
Add the ability to explain why you're getting usage() instead of just printing it.
Capitalize log messages, and improve the wording in a few places.
- 5:02 AM Changeset in webkit [236054] by
-
- 3 edits in releases/WebKitGTK/webkit-2.22/Source/JavaScriptCore
Merge r235333 - YARR: Update UCS canonicalization tables for Unicode 11
https://bugs.webkit.org/show_bug.cgi?id=188928
Reviewed by Mark Lam.
Generated YarrCanonicalizeUCS2.cpp from YarrCanonicalizeUCS2.js.
This passes JavaScriptCore and test262 tests.
- yarr/YarrCanonicalizeUCS2.cpp:
- yarr/YarrCanonicalizeUCS2.js:
(printHeader):
- 5:02 AM Changeset in webkit [236053] by
-
- 13 edits1 copy3 adds in releases/WebKitGTK/webkit-2.22
Merge r235329 - Add getModifierState to MouseEvent
https://bugs.webkit.org/show_bug.cgi?id=188913
<rdar://problem/43668772>
Reviewed by Simon Fraser.
Source/WebCore:
Moved getModifierState from KeyboardEvent to UIEventWithKeyState and exposed it in MouseEvent.
See https://www.w3.org/TR/2016/WD-uievents-20160804/#mouseevent
This patch also fixes the bug that initMouseEvent was not clearing AltGraph and CapsLock states,
which was preserved in the refactoring done in r235158.
Tests: fast/events/constructors/mouse-event-getModifierState.html
fast/events/dblclick-event-getModifierState.html
- dom/KeyboardEvent.cpp:
(WebCore::KeyboardEvent::getModifierState const): Moved to UIEventWithKeyState.
- dom/KeyboardEvent.h:
- dom/KeyboardEvent.idl: Insert a blank line to match the spec's IDL.
- dom/MouseEvent.idl: Added getModifierState.
- dom/UIEventWithKeyState.cpp:
(WebCore::UIEventWithKeyState::modifiersFromInitializer): Moved from the header file.
(WebCore::UIEventWithKeyState::getModifierState const):
(WebCore::UIEventWithKeyState::setModifierKeys): Moved from the header file.
- dom/UIEventWithKeyState.h:
(WebCore::UIEventWithKeyState::modifierKeys const):
(WebCore::UIEventWithKeyState::setModifierKeys): Deleted the variant which didn't take altGraphKey
since that variant behaves same as the one which takes altGraphKey.
LayoutTests:
Added two tests for getModifierState: one manually setting modifier key states in MouseEvent's constructor,
and another one for dblclick inheriting modifier key states from the click event.
Also improved the test coverage for KeyboardEvent's getModifierState.
- fast/events/constructors/keyboard-event-getModifierState-expected.txt:
- fast/events/constructors/keyboard-event-getModifierState.html: Added more test cases.
- fast/events/constructors/mouse-event-getModifierState-expected.txt: Added.
- fast/events/constructors/mouse-event-getModifierState.html: Added.
- fast/events/dblclick-event-getModifierState-expected.txt: Added.
- fast/events/dblclick-event-getModifierState.html: Added.
- fast/events/init-event-clears-capslock-expected.txt:
- fast/events/init-event-clears-capslock.html: Added tests for MouseEvent. Note that initMouseEvent doesn't
take altGraphKey boolean unlike initKeyboardEvent.
- platform/ios/TestExpectations: Skip the dblclick test in iOS since click event isn't supported on iOS.
- 5:02 AM Changeset in webkit [236052] by
-
- 3 edits in releases/WebKitGTK/webkit-2.22/Source/JavaScriptCore
Merge r235322 - YARR: JIT RegExps with non-greedy parenthesized sub patterns
https://bugs.webkit.org/show_bug.cgi?id=180876
Reviewed by Filip Pizlo.
Implemented the non-greedy nested parenthesis based on the prior greedy nested parenthesis work.
For the matching code, the greedy path was correct except that we don't try matching for the
non-greedy case. Added a jump out to the term after the parenthesis and a label to perform the
first / next match when we backtrack. The backtracking code needs to check to see if we have
tried the first match or if we can do another match.
Updated the disassembly annotations to include parenthesis capturing info, quantifier type and
count. Did other minor cleanup as well.
Fixed function name typo, added missing 't' in "setUsesPaternContextBuffer()".
Updated the text in some comments, both for this change as well as accuracy for existing code.
- yarr/YarrJIT.cpp:
(JSC::Yarr::YarrGenerator::generate):
(JSC::Yarr::YarrGenerator::backtrack):
(JSC::Yarr::YarrGenerator::opCompileParenthesesSubpattern):
(JSC::Yarr::YarrGenerator::compile):
(JSC::Yarr::dumpCompileFailure):
(JSC::Yarr::jitCompile):
- yarr/YarrJIT.h:
(JSC::Yarr::YarrCodeBlock::setUsesPatternContextBuffer):
(JSC::Yarr::YarrCodeBlock::setUsesPaternContextBuffer): Deleted.
- 4:23 AM Changeset in webkit [236051] by
-
- 3 edits in trunk/Source/WebKit
Unreviewed, fix incorrect WPE build fix made in r236009
This isn't the right place to add the typedef. I failed to notice that the WebKitWebView
type is not actually used anywhere in this header. Actually, the problematic function is no
longer declared or used anywhere and was just missed when WebKitScriptDialog was refactored,
so remove it.
- UIProcess/API/wpe/WebKitScriptDialog.h:
- UIProcess/API/wpe/WebKitScriptDialogWPE.cpp:
(webkitScriptDialogRun): Deleted.
- 4:06 AM Changeset in webkit [236050] by
-
- 2 edits in trunk/Tools
[JHBuild] Update to GStreamer 1.14.3
https://bugs.webkit.org/show_bug.cgi?id=189450
Reviewed by Xabier Rodriguez-Calvar.
- gstreamer/jhbuild.modules: Bump GStreamer modules from 1.14.1 to 1.14.3.
- 2:54 AM Changeset in webkit [236049] by
-
- 9 edits in releases/WebKitGTK/webkit-2.22
Merge r235315 - Allow creating WeakPtrs to const objects
https://bugs.webkit.org/show_bug.cgi?id=188785
Reviewed by Geoff Garen.
Source/WebCore:
Remove some unneeded const_casts.
- css/MediaQueryEvaluator.cpp:
(WebCore::MediaQueryEvaluator::MediaQueryEvaluator):
(WebCore::MediaQueryEvaluator::evaluate const):
- css/MediaQueryEvaluator.h:
- rendering/FloatingObjects.cpp:
(WebCore::ComputeFloatOffsetAdapter::ComputeFloatOffsetAdapter):
(WebCore::ComputeFloatOffsetForFloatLayoutAdapter::ComputeFloatOffsetForFloatLayoutAdapter):
(WebCore::ComputeFloatOffsetForLineLayoutAdapter::ComputeFloatOffsetForLineLayoutAdapter):
(WebCore::FindNextFloatLogicalBottomAdapter::FindNextFloatLogicalBottomAdapter):
(WebCore::FloatingObjects::FloatingObjects):
- rendering/FloatingObjects.h:
(WebCore::FloatingObjects::renderer const):
Source/WTF:
const Foo foo;
WeakPtr<const Foo> weakConstFoo = makeWeakPtr(foo);
- wtf/WeakPtr.h:
(WTF::WeakPtrFactory::createWeakPtr const):
Add a separate factory function for const T.
The underlying WeakReference is kept non-const in all cases.
Tools:
- TestWebKitAPI/Tests/WTF/WeakPtr.cpp:
(TestWebKitAPI::Base::weakPtrFactory const):
(TestWebKitAPI::TEST):
(TestWebKitAPI::Base::weakPtrFactory): Deleted.
- 2:54 AM Changeset in webkit [236048] by
-
- 3 edits2 adds in releases/WebKitGTK/webkit-2.22
Merge r235268 - initKeyboardEvent doesn't clear CapsLock state
https://bugs.webkit.org/show_bug.cgi?id=188909
Reviewed by Wenson Hsieh.
Source/WebCore:
Fixed the bug by not preserving CapsLock state in setModifierKeys variant which takes boolean
for altGraphKey, which is only called by KeyboardEvent::initKeyboardEvent.
Test: fast/events/init-event-clears-capslock.html
- dom/UIEventWithKeyState.h:
(WebCore::UIEventWithKeyState::setModifierKeys):
LayoutTests:
Added a regression test. Note that altGraph is only supported in WebKit
so Chrome and Firefox would fail to reset it via initKeyboardEvent.
- fast/events/init-event-clears-capslock-expected.txt: Added.
- fast/events/init-event-clears-capslock.html: Added.
- 2:54 AM Changeset in webkit [236047] by
-
- 116 edits in releases/WebKitGTK/webkit-2.22/Source/WebKit
Merge r235265 - Use unified build for UIProcess
https://bugs.webkit.org/show_bug.cgi?id=185014
Reviewed by Alex Christensen.
- Sources.txt:
- SourcesCocoa.txt:
- UIProcess/API/APIWebsiteDataStore.h:
- UIProcess/API/Cocoa/WKWebView.mm:
- UIProcess/API/Cocoa/WKWebViewConfiguration.mm:
(-[WKWebViewConfiguration urlSchemeHandlerForURLScheme:]):
- UIProcess/API/glib/IconDatabase.cpp:
- UIProcess/API/gtk/PageClientImpl.cpp:
- UIProcess/API/gtk/WebKitColorChooser.cpp:
- UIProcess/API/gtk/WebKitPopupMenu.cpp:
- UIProcess/API/gtk/WebKitRemoteInspectorProtocolHandler.cpp:
- UIProcess/ApplicationStateTracker.mm:
- UIProcess/Authentication/mac/WebCredentialMac.mm:
- UIProcess/Automation/cocoa/WebAutomationSessionCocoa.mm:
- UIProcess/Automation/ios/WebAutomationSessionIOS.mm:
- UIProcess/Automation/mac/WebAutomationSessionMac.mm:
- UIProcess/Cocoa/NavigationState.mm:
- UIProcess/Cocoa/PlaybackSessionManagerProxy.mm:
- UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp:
- UIProcess/Cocoa/VideoFullscreenManagerProxy.mm:
- UIProcess/Cocoa/ViewGestureController.cpp:
- UIProcess/Cocoa/WKWebViewContentProviderRegistry.mm:
(-[WKWebViewContentProviderRegistry initWithConfiguration:]):
(-[WKWebViewContentProviderRegistry addPage:]):
(-[WKWebViewContentProviderRegistry removePage:]):
- UIProcess/Cocoa/WebPageProxyCocoa.mm:
- UIProcess/Cocoa/WebPasteboardProxyCocoa.mm:
- UIProcess/Cocoa/WebProcessPoolCocoa.mm:
- UIProcess/Cocoa/WebURLSchemeHandlerCocoa.mm:
- UIProcess/Cocoa/WebViewImpl.mm:
(-[WKTextTouchBarItemController itemForIdentifier:]):
(WebKit::WebViewImpl::performDragOperation):
- UIProcess/Downloads/DownloadProxy.cpp:
- UIProcess/DrawingAreaProxy.cpp:
- UIProcess/Gamepad/UIGamepad.cpp:
- UIProcess/Gamepad/UIGamepadProvider.cpp:
- UIProcess/Gamepad/cocoa/UIGamepadProviderCocoa.mm:
- UIProcess/HighPerformanceGraphicsUsageSampler.cpp:
- UIProcess/Network/NetworkProcessProxy.cpp:
- UIProcess/Notifications/WebNotificationManagerProxy.cpp:
- UIProcess/PerActivityStateCPUUsageSampler.cpp:
- UIProcess/Plugins/PluginInfoStore.cpp:
- UIProcess/Plugins/PluginProcessProxy.cpp:
- UIProcess/Plugins/mac/PluginInfoStoreMac.mm:
- UIProcess/Plugins/mac/PluginProcessProxyMac.mm:
- UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm:
- UIProcess/RemoteLayerTree/RemoteLayerTreeHost.mm:
- UIProcess/RemoteLayerTree/RemoteLayerTreeScrollingPerformanceData.mm:
- UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.cpp:
- UIProcess/RemoteLayerTree/RemoteScrollingTree.cpp:
- UIProcess/RemoteLayerTree/ios/RemoteScrollingCoordinatorProxyIOS.mm:
- UIProcess/RemoteLayerTree/ios/ScrollingTreeOverflowScrollingNodeIOS.mm:
- UIProcess/RemoteWebInspectorProxy.cpp:
- UIProcess/ResourceLoadStatisticsMemoryStore.cpp:
- UIProcess/ServiceWorkerProcessProxy.cpp:
- UIProcess/Storage/StorageProcessProxy.cpp:
- UIProcess/SuspendedPageProxy.cpp:
- UIProcess/TextCheckerCompletion.cpp:
- UIProcess/UIMessagePortChannelProvider.cpp:
- UIProcess/UserMediaPermissionCheckProxy.cpp:
- UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
- UIProcess/UserMediaPermissionRequestProxy.cpp:
- UIProcess/VisitedLinkStore.cpp:
- UIProcess/WKInspectorHighlightView.mm:
(findIntersectionOnLineBetweenPoints):
(quadIntersection):
(layerPathWithHole):
(layerPath):
(-[WKInspectorHighlightView _layoutForNodeHighlight:offset:]):
(-[WKInspectorHighlightView _layoutForNodeListHighlight:]):
(-[WKInspectorHighlightView _layoutForRectsHighlight:]):
(-[WKInspectorHighlightView update:]):
- UIProcess/WebBackForwardList.cpp:
- UIProcess/WebContextMenuListenerProxy.cpp:
- UIProcess/WebCookieManagerProxy.cpp:
- UIProcess/WebEditCommandProxy.cpp:
- UIProcess/WebFrameProxy.cpp:
- UIProcess/WebFullScreenManagerProxy.cpp:
- UIProcess/WebInspectorProxy.cpp:
- UIProcess/WebNavigationState.cpp:
- UIProcess/WebOpenPanelResultListenerProxy.cpp:
- UIProcess/WebPageInjectedBundleClient.cpp:
- UIProcess/WebPageProxy.cpp:
- UIProcess/WebProcessPool.cpp:
- UIProcess/WebProcessProxy.cpp:
- UIProcess/WebStorage/LocalStorageDatabaseTracker.cpp:
- UIProcess/WebURLSchemeHandler.cpp:
- UIProcess/WebURLSchemeTask.cpp:
- UIProcess/gtk/AcceleratedBackingStoreWayland.cpp:
- UIProcess/gtk/AcceleratedBackingStoreX11.cpp:
- UIProcess/ios/DragDropInteractionState.mm:
- UIProcess/ios/InputViewUpdateDeferrer.mm:
- UIProcess/ios/PageClientImplIOS.mm:
(-[WKEditCommandObjC initWithWebEditCommandProxy:]):
(-[WKEditCommandObjC command]):
- UIProcess/ios/SmartMagnificationController.mm:
- UIProcess/ios/TextCheckerIOS.mm:
- UIProcess/ios/ViewGestureControllerIOS.mm:
(WebKit::ViewGestureController::beginSwipeGesture):
(WebKit::ViewGestureController::removeSwipeSnapshot):
- UIProcess/ios/WKActionSheetAssistant.mm:
(presentationStyleForView):
- UIProcess/ios/WKApplicationStateTrackingView.mm:
(-[WKApplicationStateTrackingView initWithFrame:webView:]):
(-[WKApplicationStateTrackingView _applicationDidEnterBackground]):
(-[WKApplicationStateTrackingView _applicationDidFinishSnapshottingAfterEnteringBackground]):
(-[WKApplicationStateTrackingView _applicationWillEnterForeground]):
- UIProcess/ios/WKGeolocationProviderIOS.mm:
(-[WKGeolocationProviderIOS _startUpdating]):
(-[WKGeolocationProviderIOS _stopUpdating]):
(-[WKGeolocationProviderIOS _setEnableHighAccuracy:]):
(-[WKGeolocationProviderIOS init]):
(-[WKGeolocationProviderIOS initWithProcessPool:]):
(-[WKGeolocationProviderIOS decidePolicyForGeolocationRequestFromOrigin:frame:completionHandler:view:]):
(-[WKGeolocationProviderIOS geolocationAuthorizationGranted]):
(-[WKLegacyCoreLocationProvider positionChanged:]):
- UIProcess/ios/WKKeyboardScrollingAnimator.mm:
(-[WKKeyboardScrollingAnimator _scrollOffsetForEvent:]):
(-[WKKeyboardScrollingAnimator beginWithEvent:]):
(-[WKKeyboardScrollingAnimator handleKeyEvent:]):
(-[WKKeyboardScrollingAnimator startAnimatedScroll]):
(-[WKKeyboardScrollingAnimator stopAnimatedScroll]):
- UIProcess/ios/WKLegacyPDFView.mm:
- UIProcess/ios/WKPDFView.mm:
(-[WKPDFView web_setContentProviderData:suggestedFilename:]):
- UIProcess/ios/WKScrollView.mm:
(-[WKScrollView _systemContentInset]):
- UIProcess/ios/WKSystemPreviewView.mm:
- UIProcess/ios/WebPageProxyIOS.mm:
- UIProcess/mac/CorrectionPanel.mm:
(correctionIndicatorType):
- UIProcess/mac/PageClientImplMac.mm:
- UIProcess/mac/RemoteWebInspectorProxyMac.mm:
(-[WKRemoteWebInspectorProxyObjCAdapter initWithRemoteWebInspectorProxy:]):
- UIProcess/mac/TextCheckerMac.mm:
- UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.mm:
- UIProcess/mac/ViewGestureControllerMac.mm:
- UIProcess/mac/ViewSnapshotStore.mm:
- UIProcess/mac/WKFullKeyboardAccessWatcher.mm:
(-[WKFullKeyboardAccessWatcher notifyAllProcessPools]):
- UIProcess/mac/WKFullScreenWindowController.mm:
(WebKit::WKFullScreenWindowControllerVideoFullscreenModelClient::setInterface):
(WebKit::WKFullScreenWindowControllerVideoFullscreenModelClient::interface const):
(-[WKFullScreenWindowController initWithWindow:webView:page:]):
(-[WKFullScreenWindowController enterFullScreen:]):
(-[WKFullScreenWindowController finishedEnterFullScreenAnimation:]):
(-[WKFullScreenWindowController finishedExitFullScreenAnimation:]):
(-[WKFullScreenWindowController windowDidEnterFullScreen:]):
(-[WKFullScreenWindowController windowDidExitFullScreen:]):
(-[WKFullScreenWindowController _manager]):
(-[WKFullScreenWindowController _replaceView:with:]):
(zoomAnimation):
(createMask):
(maskAnimation):
- UIProcess/mac/WKImmediateActionController.mm:
(-[WKImmediateActionController initWithPage:view:viewImpl:recognizer:]):
(-[WKImmediateActionController willDestroyView:]):
(-[WKImmediateActionController _clearImmediateActionState]):
(-[WKImmediateActionController didPerformImmediateActionHitTest:contentPreventsDefault:userData:]):
(-[WKImmediateActionController immediateActionRecognizerWillPrepare:]):
(-[WKImmediateActionController immediateActionRecognizerWillBeginAnimation:]):
(-[WKImmediateActionController _webHitTestResult]):
(-[WKImmediateActionController _defaultAnimationController]):
(-[WKImmediateActionController menuItem:maxSizeForPoint:]):
(-[WKImmediateActionController _animationControllerForDataDetectedText]):
(-[WKImmediateActionController _animationControllerForDataDetectedLink]):
(-[WKImmediateActionController _animationControllerForText]):
- UIProcess/mac/WKInspectorViewController.mm:
(-[WKInspectorViewController initWithInspectedPage:]):
(-[WKInspectorViewController webView]):
(-[WKInspectorViewController configuration]):
(-[WKInspectorViewController webView:runOpenPanelWithParameters:initiatedByFrame:completionHandler:]):
(-[WKInspectorViewController webView:decidePolicyForNavigationAction:decisionHandler:]):
(-[WKInspectorViewController inspectorWKWebViewReload:]):
- UIProcess/mac/WKPrintingView.mm:
(-[WKPrintingView _expectedPreviewCallbackForRect:]):
(pageDidDrawToImage):
(-[WKPrintingView _preparePDFDataForPrintingOnSecondaryThread]):
(pageDidComputePageRects):
(-[WKPrintingView _askPageToComputePageRects]):
(-[WKPrintingView _pageForRect:]):
(-[WKPrintingView _drawPDFDocument:page:atPoint:]):
(-[WKPrintingView _drawPreview:]):
(-[WKPrintingView drawRect:]):
(-[WKPrintingView rectForPage:]):
- UIProcess/mac/WKTextFinderClient.mm:
(-[WKTextFinderClient initWithPage:view:]):
(-[WKTextFinderClient findMatchesForString:relativeToMatch:findOptions:maxResults:resultCollector:]):
(-[WKTextFinderClient getSelectedText:]):
(arrayFromRects):
(-[WKTextFinderClient didFindStringMatchesWithRects:didWrapAround:]):
(-[WKTextFinderClient didGetImageForMatchResult:]):
- UIProcess/mac/WKTextInputWindowController.mm:
- UIProcess/mac/WKViewLayoutStrategy.mm:
(+[WKViewLayoutStrategy layoutStrategyWithPage:view:viewImpl:mode:]):
(-[WKViewLayoutStrategy initWithPage:view:viewImpl:mode:]):
(-[WKViewViewSizeLayoutStrategy initWithPage:view:viewImpl:mode:]):
(-[WKViewFixedSizeLayoutStrategy initWithPage:view:viewImpl:mode:]):
(-[WKViewDynamicSizeComputedFromViewScaleLayoutStrategy initWithPage:view:viewImpl:mode:]):
(-[WKViewDynamicSizeComputedFromMinimumDocumentSizeLayoutStrategy initWithPage:view:viewImpl:mode:]):
- UIProcess/mac/WebColorPickerMac.mm:
- UIProcess/mac/WebContextMenuProxyMac.mm:
(-[WKMenuTarget forwardContextMenuAction:]):
(WebKit::menuItemIdentifier):
(WebKit::WebContextMenuProxyMac::createContextMenuItem):
- UIProcess/mac/WebInspectorProxyMac.mm:
(-[WKWebInspectorProxyObjCAdapter initWithWebInspectorProxy:]):
- UIProcess/mac/WebPageProxyMac.mm:
- UIProcess/mac/WebPopupMenuProxyMac.mm:
- UIProcess/win/PageClientImpl.cpp:
- UIProcess/win/TextCheckerWin.cpp:
- UIProcess/win/WebContextMenuProxyWin.cpp:
- UIProcess/win/WebPopupMenuProxyWin.cpp:
- UIProcess/win/WebView.cpp:
- UIProcess/wpe/TextCheckerWPE.cpp:
- UIProcess/wpe/WebPasteboardProxyWPE.cpp:
- WebKit.xcodeproj/project.pbxproj:
- 2:25 AM Changeset in webkit [236046] by
-
- 22 edits in releases/WebKitGTK/webkit-2.22/Source
Merge r235261 - JSRunLoopTimer may run part of a member function after it's destroyed
https://bugs.webkit.org/show_bug.cgi?id=188426
Reviewed by Mark Lam.
Source/JavaScriptCore:
When I was reading the JSRunLoopTimer code, I noticed that it is possible
to end up running timer code after the class had been destroyed.
The issue I spotted was in this function:
`
void JSRunLoopTimer::timerDidFire()
{
JSLock* apiLock = m_apiLock.get();
if (!apiLock) {
Likely a buggy usage: the timer fired while JSRunLoopTimer was being destroyed.
return;
}
HERE
std::lock_guard<JSLock> lock(*apiLock);
RefPtr<VM> vm = apiLock->vm();
if (!vm) {
The VM has been destroyed, so we should just give up.
return;
}
doWork();
}
`
Look at the comment 'HERE'. Let's say that the timer callback thread gets context
switched before grabbing the API lock. Then, some other thread destroys the VM.
And let's say that the VM owns (perhaps transitively) this timer. Then, the
timer would run code and access member variables after it was destroyed.
This patch fixes this issue by introducing a new timer manager class.
This class manages timers on a per VM basis. When a timer is scheduled,
this class refs the timer. It also calls the timer callback while actively
maintaining a +1 ref to it. So, it's no longer possible to call the timer
callback after the timer has been destroyed. However, calling a timer callback
can still race with the VM being destroyed. We continue to detect this case and
bail out of the callback early.
This patch also removes a lot of duplicate code between GCActivityCallback
and JSRunLoopTimer.
- heap/EdenGCActivityCallback.cpp:
(JSC::EdenGCActivityCallback::doCollection):
(JSC::EdenGCActivityCallback::lastGCLength):
(JSC::EdenGCActivityCallback::deathRate):
- heap/EdenGCActivityCallback.h:
- heap/FullGCActivityCallback.cpp:
(JSC::FullGCActivityCallback::doCollection):
(JSC::FullGCActivityCallback::lastGCLength):
(JSC::FullGCActivityCallback::deathRate):
- heap/FullGCActivityCallback.h:
- heap/GCActivityCallback.cpp:
(JSC::GCActivityCallback::doWork):
(JSC::GCActivityCallback::scheduleTimer):
(JSC::GCActivityCallback::didAllocate):
(JSC::GCActivityCallback::willCollect):
(JSC::GCActivityCallback::cancel):
(JSC::GCActivityCallback::cancelTimer): Deleted.
(JSC::GCActivityCallback::nextFireTime): Deleted.
- heap/GCActivityCallback.h:
- heap/Heap.cpp:
(JSC::Heap::reportAbandonedObjectGraph):
(JSC::Heap::notifyIncrementalSweeper):
(JSC::Heap::updateAllocationLimits):
(JSC::Heap::didAllocate):
- heap/IncrementalSweeper.cpp:
(JSC::IncrementalSweeper::scheduleTimer):
(JSC::IncrementalSweeper::doWork):
(JSC::IncrementalSweeper::doSweep):
(JSC::IncrementalSweeper::sweepNextBlock):
(JSC::IncrementalSweeper::startSweeping):
(JSC::IncrementalSweeper::stopSweeping):
- heap/IncrementalSweeper.h:
- heap/StopIfNecessaryTimer.cpp:
(JSC::StopIfNecessaryTimer::doWork):
(JSC::StopIfNecessaryTimer::scheduleSoon):
- heap/StopIfNecessaryTimer.h:
- runtime/JSRunLoopTimer.cpp:
(JSC::epochTime):
(JSC::JSRunLoopTimer::Manager::timerDidFireCallback):
(JSC::JSRunLoopTimer::Manager::PerVMData::setRunLoop):
(JSC::JSRunLoopTimer::Manager::PerVMData::PerVMData):
(JSC::JSRunLoopTimer::Manager::PerVMData::~PerVMData):
(JSC::JSRunLoopTimer::Manager::timerDidFire):
(JSC::JSRunLoopTimer::Manager::shared):
(JSC::JSRunLoopTimer::Manager::registerVM):
(JSC::JSRunLoopTimer::Manager::unregisterVM):
(JSC::JSRunLoopTimer::Manager::scheduleTimer):
(JSC::JSRunLoopTimer::Manager::cancelTimer):
(JSC::JSRunLoopTimer::Manager::timeUntilFire):
(JSC::JSRunLoopTimer::Manager::didChangeRunLoop):
(JSC::JSRunLoopTimer::timerDidFire):
(JSC::JSRunLoopTimer::JSRunLoopTimer):
(JSC::JSRunLoopTimer::timeUntilFire):
(JSC::JSRunLoopTimer::setTimeUntilFire):
(JSC::JSRunLoopTimer::cancelTimer):
(JSC::JSRunLoopTimer::setRunLoop): Deleted.
(JSC::JSRunLoopTimer::timerDidFireCallback): Deleted.
(JSC::JSRunLoopTimer::scheduleTimer): Deleted.
- runtime/JSRunLoopTimer.h:
(JSC::JSRunLoopTimer::Manager::PerVMData::PerVMData):
- runtime/PromiseDeferredTimer.cpp:
(JSC::PromiseDeferredTimer::doWork):
(JSC::PromiseDeferredTimer::runRunLoop):
(JSC::PromiseDeferredTimer::addPendingPromise):
(JSC::PromiseDeferredTimer::hasPendingPromise):
(JSC::PromiseDeferredTimer::hasDependancyInPendingPromise):
(JSC::PromiseDeferredTimer::cancelPendingPromise):
(JSC::PromiseDeferredTimer::scheduleWorkSoon):
- runtime/PromiseDeferredTimer.h:
- runtime/VM.cpp:
(JSC::VM::VM):
(JSC::VM::~VM):
(JSC::VM::setRunLoop):
(JSC::VM::registerRunLoopTimer): Deleted.
(JSC::VM::unregisterRunLoopTimer): Deleted.
- runtime/VM.h:
(JSC::VM::runLoop const):
- wasm/js/WebAssemblyPrototype.cpp:
(JSC::webAssemblyModuleValidateAsyncInternal):
(JSC::instantiate):
(JSC::compileAndInstantiate):
(JSC::webAssemblyModuleInstantinateAsyncInternal):
(JSC::webAssemblyCompileStreamingInternal):
(JSC::webAssemblyInstantiateStreamingInternal):
Source/WebCore:
- page/cocoa/ResourceUsageThreadCocoa.mm:
(WebCore::ResourceUsageThread::platformThreadBody):
- page/linux/ResourceUsageThreadLinux.cpp:
(WebCore::ResourceUsageThread::platformThreadBody):
- 2:25 AM Changeset in webkit [236045] by
-
- 30 edits in releases/WebKitGTK/webkit-2.22/Source
Merge r235254 - Move vmEntryGlobalObject() to VM from CallFrame.
https://bugs.webkit.org/show_bug.cgi?id=188900
<rdar://problem/43655753>
Reviewed by Michael Saboff.
Source/JavaScriptCore:
Also introduced CallFrame::isGlobalExec() which makes use of one property of
GlobalExecs to identify them i.e. GlobalExecs have null callerFrame and returnPCs.
CallFrame::initGlobalExec() ensures this.
In contrast, normal CallFrames always have a callerFrame (because they must at
least be preceded by a VM EntryFrame) and a returnPC (at least return to the
VM entry glue).
- API/APIUtils.h:
(handleExceptionIfNeeded):
(setException):
- API/JSBase.cpp:
(JSEvaluateScript):
(JSCheckScriptSyntax):
- API/JSContextRef.cpp:
(JSGlobalContextRetain):
(JSGlobalContextRelease):
(JSGlobalContextCopyName):
(JSGlobalContextSetName):
(JSGlobalContextGetRemoteInspectionEnabled):
(JSGlobalContextSetRemoteInspectionEnabled):
(JSGlobalContextGetIncludesNativeCallStackWhenReportingExceptions):
(JSGlobalContextSetIncludesNativeCallStackWhenReportingExceptions):
(JSGlobalContextGetDebuggerRunLoop):
(JSGlobalContextSetDebuggerRunLoop):
(JSGlobalContextGetAugmentableInspectorController):
- API/JSValue.mm:
(reportExceptionToInspector):
- API/glib/JSCClass.cpp:
(jscContextForObject):
- API/glib/JSCContext.cpp:
(jsc_context_evaluate_in_object):
- debugger/Debugger.cpp:
(JSC::Debugger::pauseIfNeeded):
- debugger/DebuggerCallFrame.cpp:
(JSC::DebuggerCallFrame::vmEntryGlobalObject const):
(JSC::DebuggerCallFrame::evaluateWithScopeExtension):
- interpreter/CallFrame.cpp:
(JSC::CallFrame::vmEntryGlobalObject): Deleted.
- interpreter/CallFrame.h:
(JSC::ExecState::scope const):
(JSC::ExecState::noCaller):
(JSC::ExecState::isGlobalExec const):
- interpreter/Interpreter.cpp:
(JSC::notifyDebuggerOfUnwinding):
(JSC::Interpreter::notifyDebuggerOfExceptionToBeThrown):
(JSC::Interpreter::debug):
- runtime/CallData.cpp:
(JSC::profiledCall):
- runtime/Completion.cpp:
(JSC::evaluate):
(JSC::profiledEvaluate):
(JSC::evaluateWithScopeExtension):
(JSC::loadAndEvaluateModule):
(JSC::loadModule):
(JSC::linkAndEvaluateModule):
(JSC::importModule):
- runtime/ConstructData.cpp:
(JSC::profiledConstruct):
- runtime/Error.cpp:
(JSC::getStackTrace):
- runtime/VM.cpp:
(JSC::VM::throwException):
(JSC::VM::vmEntryGlobalObject const):
- runtime/VM.h:
Source/WebCore:
No new tests needed because this patch does not introduce new functionality.
- bindings/js/JSCustomXPathNSResolver.cpp:
(WebCore::JSCustomXPathNSResolver::create):
- bindings/js/JSDOMGlobalObject.cpp:
(WebCore::callerGlobalObject):
(WebCore::toJSDOMGlobalObject): Deleted.
- bindings/js/JSDOMWindowBase.cpp:
(WebCore::firstDOMWindow):
- bridge/c/c_utility.cpp:
(JSC::Bindings::convertValueToNPVariant):
- bridge/objc/WebScriptObject.mm:
(WebCore::addExceptionToConsole):
- bridge/objc/objc_instance.mm:
(ObjcInstance::moveGlobalExceptionToExecState):
- bridge/objc/objc_runtime.mm:
(JSC::Bindings::convertValueToObjcObject):
- bridge/objc/objc_utility.mm:
(JSC::Bindings::convertValueToObjcValue):
- testing/Internals.cpp:
(WebCore::Internals::cloneArrayBuffer):
Source/WebKitLegacy/mac:
- WebView/WebScriptDebugger.mm:
(WebScriptDebugger::sourceParsed):
- 2:24 AM Changeset in webkit [236044] by
-
- 8 edits2 adds in releases/WebKitGTK/webkit-2.22
Merge r235243 - Assert in NetworkBlobRegistry::unregisterBlobURL after network process had terminated
https://bugs.webkit.org/show_bug.cgi?id=188880
Reviewed by Saam Barati.
Source/WebKit:
Removed the debug assertion. WebContent process might be asking this network process
to unregister a blob registered from another network processs which had since crashed.
We could keep track of which blob had been registered with which network process
in WebContent process and avoid sending IPC to the network process but that's a lot of
house-keeping for virtually no benefit other than not hitting this assertion.
- NetworkProcess/FileAPI/NetworkBlobRegistry.cpp:
(WebKit::NetworkBlobRegistry::unregisterBlobURL):
Tools:
Fixed the bug that testRunner's terminateNetworkProcess, terminateServiceWorkerProcess, and terminateStorageProcess
were asynchronously terminating respective processes. Do so synchronously so that we can deterministically
test WebKit's behavior in layout tests.
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::terminateNetworkProcess):
(WTR::TestRunner::terminateServiceWorkerProcess):
(WTR::TestRunner::terminateStorageProcess):
- WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveMessageFromInjectedBundle):
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
LayoutTests:
Added a layout test which demonstrates this debug assertion.
- TestExpectations:
- fast/files/blob-network-process-crash-expected.txt: Added.
- fast/files/blob-network-process-crash.html: Added.
- platform/wk2/TestExpectations:
- 1:50 AM Changeset in webkit [236043] by
-
- 2 edits in releases/WebKitGTK/webkit-2.22/Source/JavaScriptCore
Merge r235238 - YARR: Need to JIT compile a RegExp before using containsNestedSubpatterns flag
https://bugs.webkit.org/show_bug.cgi?id=188895
Reviewed by Mark Lam.
Found while working on another change. This will allow processing of nested
parenthesis that require saved ParenContext structures.
- yarr/YarrJIT.cpp:
(JSC::Yarr::YarrGenerator::compile):
- 1:50 AM Changeset in webkit [236042] by
-
- 2 edits in releases/WebKitGTK/webkit-2.22/Source/WebKit
Merge r235208 - De-unify WebPage
https://bugs.webkit.org/show_bug.cgi?id=188865
Reviewed by Wenson Hsieh.
- Sources.txt:
- WebKit.xcodeproj/project.pbxproj:
WebPage being unified is causing mysterious build issues inside Carbon headers
on High Sierra only. Also, WebPage by itself takes longer to build than
most full unified source files, so it might not make sense to unify it
with others (to maximize parallelism).
- 1:50 AM Changeset in webkit [236041] by
-
- 159 edits in releases/WebKitGTK/webkit-2.22/Source/WebKit
Merge r235176 - Use unified build for WebProcess
https://bugs.webkit.org/show_bug.cgi?id=185015
Reviewed by Alex Christensen.
- Sources.txt:
- SourcesCocoa.txt:
- UIProcess/WebPageProxy.h:
- WebKit.xcodeproj/project.pbxproj:
- WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp:
- WebProcess/Databases/WebDatabaseProvider.cpp:
- WebProcess/EntryPoint/mac/XPCService/WebContentServiceEntryPoint.mm:
- WebProcess/FileAPI/BlobRegistryProxy.cpp:
- WebProcess/FullScreen/WebFullScreenManager.cpp:
- WebProcess/Gamepad/WebGamepadProvider.cpp:
- WebProcess/Geolocation/GeolocationPermissionRequestManager.cpp:
- WebProcess/Geolocation/WebGeolocationManager.cpp:
- WebProcess/InjectedBundle/API/c/mac/WKBundlePageBannerMac.mm:
- WebProcess/InjectedBundle/API/gtk/DOM/GObjectEventListener.cpp:
- WebProcess/InjectedBundle/DOM/InjectedBundleCSSStyleDeclarationHandle.cpp:
- WebProcess/InjectedBundle/DOM/InjectedBundleFileHandle.cpp:
- WebProcess/InjectedBundle/DOM/InjectedBundleNodeHandle.cpp:
- WebProcess/InjectedBundle/DOM/InjectedBundleRangeHandle.cpp:
- WebProcess/InjectedBundle/InjectedBundle.cpp:
- WebProcess/InjectedBundle/InjectedBundleBackForwardList.cpp:
- WebProcess/InjectedBundle/InjectedBundleBackForwardListItem.cpp:
- WebProcess/InjectedBundle/InjectedBundleDOMWindowExtension.cpp:
- WebProcess/InjectedBundle/InjectedBundleHitTestResult.cpp:
- WebProcess/InjectedBundle/InjectedBundleNavigationAction.cpp:
- WebProcess/InjectedBundle/InjectedBundlePageContextMenuClient.cpp:
- WebProcess/InjectedBundle/InjectedBundlePageEditorClient.cpp:
- WebProcess/InjectedBundle/InjectedBundlePageFormClient.cpp:
- WebProcess/InjectedBundle/InjectedBundlePageFullScreenClient.cpp:
- WebProcess/InjectedBundle/InjectedBundlePageLoaderClient.cpp:
- WebProcess/InjectedBundle/InjectedBundlePagePolicyClient.cpp:
- WebProcess/InjectedBundle/InjectedBundlePageResourceLoadClient.cpp:
- WebProcess/InjectedBundle/InjectedBundlePageUIClient.cpp:
- WebProcess/InjectedBundle/InjectedBundleScriptWorld.cpp:
- WebProcess/InjectedBundle/mac/InjectedBundleMac.mm:
- WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp:
- WebProcess/Network/NetworkProcessConnection.cpp:
- WebProcess/Network/WebLoaderStrategy.cpp:
- WebProcess/Network/WebResourceLoader.cpp:
- WebProcess/Network/WebSocketProvider.cpp:
- WebProcess/Network/WebSocketStream.cpp:
- WebProcess/Network/webrtc/LibWebRTCProvider.cpp:
- WebProcess/Network/webrtc/LibWebRTCResolver.cpp:
- WebProcess/Network/webrtc/LibWebRTCResolver.h:
- WebProcess/Network/webrtc/LibWebRTCSocket.cpp:
- WebProcess/Network/webrtc/LibWebRTCSocket.h:
- WebProcess/Network/webrtc/WebMDNSRegister.cpp:
- WebProcess/Network/webrtc/WebRTCMonitor.cpp:
- WebProcess/Network/webrtc/WebRTCMonitor.h:
- WebProcess/Notifications/NotificationPermissionRequestManager.cpp:
- WebProcess/Notifications/WebNotificationManager.cpp:
- WebProcess/Plugins/Netscape/JSNPMethod.cpp:
- WebProcess/Plugins/Netscape/JSNPObject.cpp:
- WebProcess/Plugins/Netscape/NPJSObject.cpp:
- WebProcess/Plugins/Netscape/NPRuntimeObjectMap.cpp:
- WebProcess/Plugins/Netscape/NetscapeBrowserFuncs.cpp:
- WebProcess/Plugins/Netscape/NetscapePlugin.cpp:
- WebProcess/Plugins/Netscape/NetscapePluginNone.cpp:
- WebProcess/Plugins/Netscape/NetscapePluginStream.cpp:
- WebProcess/Plugins/Netscape/mac/NetscapePluginMac.mm:
- WebProcess/Plugins/PDF/PDFPlugin.mm:
- WebProcess/Plugins/PDF/PDFPluginAnnotation.mm:
- WebProcess/Plugins/PDF/PDFPluginChoiceAnnotation.mm:
- WebProcess/Plugins/PDF/PDFPluginPasswordField.mm:
- WebProcess/Plugins/PDF/PDFPluginTextAnnotation.mm:
- WebProcess/Plugins/Plugin.cpp:
- WebProcess/Plugins/PluginProcessConnection.cpp:
- WebProcess/Plugins/PluginProxy.cpp:
- WebProcess/Plugins/PluginView.cpp:
- WebProcess/Plugins/WebPluginInfoProvider.cpp:
- WebProcess/Storage/ServiceWorkerClientFetch.cpp:
- WebProcess/Storage/WebSWClientConnection.cpp:
- WebProcess/Storage/WebSWContextManagerConnection.cpp:
- WebProcess/Storage/WebSWOriginTable.cpp:
- WebProcess/Storage/WebServiceWorkerFetchTaskClient.cpp:
- WebProcess/Storage/WebServiceWorkerProvider.cpp:
- WebProcess/Storage/WebToStorageProcessConnection.cpp:
- WebProcess/UserContent/WebUserContentController.cpp:
- WebProcess/WebConnectionToUIProcess.cpp:
- WebProcess/WebCoreSupport/SessionStateConversion.cpp:
- WebProcess/WebCoreSupport/WebChromeClient.cpp:
- WebProcess/WebCoreSupport/WebColorChooser.cpp:
- WebProcess/WebCoreSupport/WebContextMenuClient.cpp:
- WebProcess/WebCoreSupport/WebDataListSuggestionPicker.cpp:
- WebProcess/WebCoreSupport/WebDiagnosticLoggingClient.cpp:
- WebProcess/WebCoreSupport/WebDragClient.cpp:
- WebProcess/WebCoreSupport/WebEditorClient.cpp:
- WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:
- WebProcess/WebCoreSupport/WebGeolocationClient.cpp:
- WebProcess/WebCoreSupport/WebInspectorClient.cpp:
- WebProcess/WebCoreSupport/WebMessagePortChannelProvider.cpp:
- WebProcess/WebCoreSupport/WebNotificationClient.cpp:
- WebProcess/WebCoreSupport/WebPerformanceLoggingClient.cpp:
- WebProcess/WebCoreSupport/WebPlatformStrategies.cpp:
- WebProcess/WebCoreSupport/WebPopupMenu.cpp:
- WebProcess/WebCoreSupport/WebProgressTrackerClient.cpp:
- WebProcess/WebCoreSupport/WebSearchPopupMenu.cpp:
- WebProcess/WebCoreSupport/WebUserMediaClient.cpp:
- WebProcess/WebCoreSupport/WebValidationMessageClient.cpp:
- WebProcess/WebCoreSupport/ios/WebChromeClientIOS.mm:
- WebProcess/WebCoreSupport/ios/WebEditorClientIOS.mm:
- WebProcess/WebCoreSupport/ios/WebFrameLoaderClientIOS.mm:
- WebProcess/WebCoreSupport/mac/WebAlternativeTextClient.cpp:
- WebProcess/WebCoreSupport/mac/WebContextMenuClientMac.mm:
- WebProcess/WebCoreSupport/mac/WebDragClientMac.mm:
- WebProcess/WebCoreSupport/mac/WebEditorClientMac.mm:
- WebProcess/WebCoreSupport/mac/WebFrameNetworkingContext.mm:
- WebProcess/WebCoreSupport/mac/WebPopupMenuMac.mm:
- WebProcess/WebCoreSupport/soup/WebFrameNetworkingContext.cpp:
- WebProcess/WebCoreSupport/win/WebContextMenuClientWin.cpp:
- WebProcess/WebCoreSupport/win/WebPopupMenuWin.cpp:
- WebProcess/WebCoreSupport/wpe/WebEditorClientWPE.cpp:
- WebProcess/WebPage/Cocoa/WebPageCocoa.mm:
- WebProcess/WebPage/DrawingArea.cpp:
- WebProcess/WebPage/EventDispatcher.cpp:
- WebProcess/WebPage/FindController.cpp:
- WebProcess/WebPage/LayerTreeHost.cpp:
- WebProcess/WebPage/RemoteLayerTree/GraphicsLayerCARemote.cpp:
- WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemote.cpp:
- WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteCustom.mm:
- WebProcess/WebPage/RemoteLayerTree/PlatformCALayerRemoteTiledBacking.cpp:
- WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeContext.mm:
- WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDisplayRefreshMonitor.mm:
- WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:
- WebProcess/WebPage/RemoteLayerTree/RemoteScrollingCoordinator.mm:
- WebProcess/WebPage/RemoteWebInspectorUI.cpp:
- WebProcess/WebPage/ViewGestureGeometryCollector.cpp:
- WebProcess/WebPage/VisitedLinkTableController.cpp:
- WebProcess/WebPage/WebBackForwardListProxy.cpp:
- WebProcess/WebPage/WebContextMenu.cpp:
- WebProcess/WebPage/WebDocumentLoader.cpp:
- WebProcess/WebPage/WebFrame.cpp:
- WebProcess/WebPage/WebInspector.cpp:
- WebProcess/WebPage/WebInspectorUI.cpp:
- WebProcess/WebPage/WebPage.cpp:
- WebProcess/WebPage/WebPageOverlay.cpp:
- WebProcess/WebPage/WebURLSchemeHandlerProxy.cpp:
- WebProcess/WebPage/WebURLSchemeTaskProxy.cpp:
- WebProcess/WebPage/ios/FindControllerIOS.mm:
- WebProcess/WebPage/ios/WebPageIOS.mm:
- WebProcess/WebPage/mac/DrawingAreaMac.cpp:
- WebProcess/WebPage/mac/PageBannerMac.mm:
- WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.mm:
- WebProcess/WebPage/mac/WKAccessibilityWebPageObjectBase.mm:
- WebProcess/WebPage/mac/WebPageMac.mm:
- WebProcess/WebPage/win/WebPageWin.cpp:
- WebProcess/WebPage/wpe/AcceleratedSurfaceWPE.cpp:
- WebProcess/WebPage/wpe/WebPageWPE.cpp:
- WebProcess/WebProcess.cpp:
- WebProcess/WebStorage/StorageAreaImpl.cpp:
- WebProcess/WebStorage/StorageAreaMap.cpp:
- WebProcess/WebStorage/StorageNamespaceImpl.cpp:
- WebProcess/WebStorage/WebStorageNamespaceProvider.cpp:
- WebProcess/cocoa/PlaybackSessionManager.mm:
- WebProcess/cocoa/UserMediaCaptureManager.cpp:
- WebProcess/cocoa/VideoFullscreenManager.mm:
- WebProcess/cocoa/WebProcessCocoa.mm:
- WebProcess/win/WebProcessMainWin.cpp:
- WebProcess/win/WebProcessWin.cpp:
- WebProcess/wpe/WebProcessMainWPE.cpp:
- 1:49 AM Changeset in webkit [236040] by
-
- 4 edits1 add in releases/WebKitGTK/webkit-2.22
Merge r235177 - The DFG CFGSimplification phase shouldn’t jettison a block when it’s the target of both branch directions.
https://bugs.webkit.org/show_bug.cgi?id=188298
<rdar://problem/42888427>
Reviewed by Saam Barati.
JSTests:
- stress/bug-188298.js: Added.
Source/JavaScriptCore:
In the event that both targets of a Branch is the same block, then even if we'll
always take one path of the branch, the other target is not unreachable because
it is the same target as the one in the taken path. Hence, it should not be
jettisoned.
- JavaScriptCore.xcodeproj/project.pbxproj:
- Added DFGCFG.h which is in use and should have been added to the project.
- dfg/DFGCFGSimplificationPhase.cpp:
(JSC::DFG::CFGSimplificationPhase::run):
- 1:49 AM Changeset in webkit [236039] by
-
- 7 edits in releases/WebKitGTK/webkit-2.22
Merge r235174 - Fetch: Stop checking Request.integrity's value in no-cors mode
https://bugs.webkit.org/show_bug.cgi?id=188802
Patch by Rob Buis <rbuis@igalia.com> on 2018-08-22
Reviewed by Frédéric Wang.
LayoutTests/imported/w3c:
Update integrity.html expected result.
- web-platform-tests/fetch/api/basic/integrity-expected.txt:
Source/WebCore:
Remove this check since it was removed from the spec.
Behavior matches Chrome and Firefox.
Test: http/tests/subresource-integrity/sri-fetch.js:
- Modules/fetch/FetchRequest.cpp:
(WebCore::FetchRequest::initializeOptions):
LayoutTests:
Unskip fetch/api/basic/integrity.html and adjust sri-fetch.js.
- TestExpectations:
- http/tests/subresource-integrity/sri-fetch.js:
- 1:49 AM Changeset in webkit [236038] by
-
- 3 edits in releases/WebKitGTK/webkit-2.22/Source/WebCore
Merge r235171 - [GTK] Never return an uninitialized ImageGStreamer object.
https://bugs.webkit.org/show_bug.cgi?id=188305
Reviewed by Philippe Normand.
The single caller was already checking for a null return value, so
make that check actually do something. Also remove the null-check on
the return value of image(), which asserted that it would never return
null.
Test: fast/canvas/canvas-createPattern-video-loading.html
- platform/graphics/gstreamer/ImageGStreamer.h:
(WebCore::ImageGStreamer::createImage): Return null if m_image wasn't created.
(WebCore::ImageGStreamer::image): Return a reference.
(WebCore::ImageGStreamer::rect): Always assert that m_image is present.
- platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
(WebCore::MediaPlayerPrivateGStreamerBase::paint): Update for new signature.
- 1:30 AM Changeset in webkit [236037] by
-
- 2 edits in trunk/Tools
[JHBuild] Doesn't check sha256 sums
https://bugs.webkit.org/show_bug.cgi?id=189646
Reviewed by Michael Catanzaro.
- gstreamer/jhbuild.modules: Properly set the sha256: prefix on hashes.
- 1:14 AM Changeset in webkit [236036] by
-
- 2 edits in releases/WebKitGTK/webkit-2.22/Source/WebCore
Merge r235170 - Add changes missing from r234925.
- layout/blockformatting/BlockMarginCollapse.cpp:
(WebCore::Layout::isMarginTopCollapsedWithParent):
(WebCore::Layout::isMarginBottomCollapsedThrough):
(WebCore::Layout::BlockFormattingContext::MarginCollapse::isMarginBottomCollapsedWithParent):
- 12:11 AM Changeset in webkit [236035] by
-
- 47 edits3 copies1 add1 delete in trunk
Move IndexedDB to Network Process
https://bugs.webkit.org/show_bug.cgi?id=189415
<rdar://problem/44396973>
Reviewed by Chris Dumez.
Source/WebKit:
We are going to eliminate storage process and move its functionality to network process.
The reasons why we want to do this:
- Lower resource usage of having an additional process for storage operations, especially
memory. Single storage process takes about 5MB memory on macOS.
- Reduce latency of Service Workers. After enabling Service Workers, we've seen
regression in app launch. The launch time of storage process is partly attributed to this:
Service Workers delay page loading until receiving response from storage process.
- We choose network process because UI process may have broader access in file system
that we don't want the storage operations to have.
This patch is the first piece towards the goal. It mainly moves indexedDB from storage process
to corresponding components of network process. Moving of Service Worker and stopping to
launch storage process will be done in following patches.
We expect to see the higher cpu and memory usage of network process as it is taking more work,
but the overall gain in memory and latency after we completely remove storage process should be
positive.
- CMakeLists.txt:
- DerivedSources.make:
- NetworkProcess/IndexedDB/WebIDBConnectionToClient.cpp: Renamed from Source/WebKit/StorageProcess/IndexedDB/WebIDBConnectionToClient.cpp.
(WebKit::WebIDBConnectionToClient::create):
(WebKit::WebIDBConnectionToClient::WebIDBConnectionToClient):
(WebKit::WebIDBConnectionToClient::~WebIDBConnectionToClient):
(WebKit::WebIDBConnectionToClient::disconnectedFromWebProcess):
(WebKit::WebIDBConnectionToClient::messageSenderConnection):
(WebKit::WebIDBConnectionToClient::connectionToClient):
(WebKit::WebIDBConnectionToClient::didDeleteDatabase):
(WebKit::WebIDBConnectionToClient::didOpenDatabase):
(WebKit::WebIDBConnectionToClient::didAbortTransaction):
(WebKit::WebIDBConnectionToClient::didCommitTransaction):
(WebKit::WebIDBConnectionToClient::didCreateObjectStore):
(WebKit::WebIDBConnectionToClient::didDeleteObjectStore):
(WebKit::WebIDBConnectionToClient::didRenameObjectStore):
(WebKit::WebIDBConnectionToClient::didClearObjectStore):
(WebKit::WebIDBConnectionToClient::didCreateIndex):
(WebKit::WebIDBConnectionToClient::didDeleteIndex):
(WebKit::WebIDBConnectionToClient::didRenameIndex):
(WebKit::WebIDBConnectionToClient::didPutOrAdd):
(WebKit::WebIDBConnectionToClient::handleGetResult):
(WebKit::WebIDBConnectionToClient::didGetRecord):
(WebKit::WebIDBConnectionToClient::didGetAllRecords):
(WebKit::WebIDBConnectionToClient::didGetCount):
(WebKit::WebIDBConnectionToClient::didDeleteRecord):
(WebKit::WebIDBConnectionToClient::didOpenCursor):
(WebKit::WebIDBConnectionToClient::didIterateCursor):
(WebKit::WebIDBConnectionToClient::fireVersionChangeEvent):
(WebKit::WebIDBConnectionToClient::didStartTransaction):
(WebKit::WebIDBConnectionToClient::didCloseFromServer):
(WebKit::WebIDBConnectionToClient::notifyOpenDBRequestBlocked):
(WebKit::WebIDBConnectionToClient::didGetAllDatabaseNames):
(WebKit::WebIDBConnectionToClient::deleteDatabase):
(WebKit::WebIDBConnectionToClient::openDatabase):
(WebKit::WebIDBConnectionToClient::abortTransaction):
(WebKit::WebIDBConnectionToClient::commitTransaction):
(WebKit::WebIDBConnectionToClient::didFinishHandlingVersionChangeTransaction):
(WebKit::WebIDBConnectionToClient::createObjectStore):
(WebKit::WebIDBConnectionToClient::deleteObjectStore):
(WebKit::WebIDBConnectionToClient::renameObjectStore):
(WebKit::WebIDBConnectionToClient::clearObjectStore):
(WebKit::WebIDBConnectionToClient::createIndex):
(WebKit::WebIDBConnectionToClient::deleteIndex):
(WebKit::WebIDBConnectionToClient::renameIndex):
(WebKit::WebIDBConnectionToClient::putOrAdd):
(WebKit::WebIDBConnectionToClient::getRecord):
(WebKit::WebIDBConnectionToClient::getAllRecords):
(WebKit::WebIDBConnectionToClient::getCount):
(WebKit::WebIDBConnectionToClient::deleteRecord):
(WebKit::WebIDBConnectionToClient::openCursor):
(WebKit::WebIDBConnectionToClient::iterateCursor):
(WebKit::WebIDBConnectionToClient::establishTransaction):
(WebKit::WebIDBConnectionToClient::databaseConnectionPendingClose):
(WebKit::WebIDBConnectionToClient::databaseConnectionClosed):
(WebKit::WebIDBConnectionToClient::abortOpenAndUpgradeNeeded):
(WebKit::WebIDBConnectionToClient::didFireVersionChangeEvent):
(WebKit::WebIDBConnectionToClient::openDBRequestCancelled):
(WebKit::WebIDBConnectionToClient::confirmDidCloseFromServer):
(WebKit::WebIDBConnectionToClient::getAllDatabaseNames):
- NetworkProcess/IndexedDB/WebIDBConnectionToClient.h: Renamed from Source/WebKit/StorageProcess/IndexedDB/WebIDBConnectionToClient.h.
- NetworkProcess/IndexedDB/WebIDBConnectionToClient.messages.in: Renamed from Source/WebKit/StorageProcess/IndexedDB/WebIDBConnectionToClient.messages.in.
- NetworkProcess/NetworkConnectionToWebProcess.cpp:
(WebKit::NetworkConnectionToWebProcess::didReceiveMessage):
Code moved from StorageToWebProcessConnection::didReceiveMessage.
(WebKit::NetworkConnectionToWebProcess::didClose):
(WebKit::NetworkConnectionToWebProcess::writeBlobsToTemporaryFiles):
Network process receives and stores sandbox extension of temporary files for later indexedDB
use.
(WebKit::NetworkConnectionToWebProcess::didClose):
(WebKit::NetworkConnectionToWebProcess::writeBlobsToTemporaryFiles):
(WebKit::generateIDBConnectionToServerIdentifier):
(WebKit::NetworkConnectionToWebProcess::establishIDBConnectionToServer):
(WebKit::NetworkConnectionToWebProcess::removeIDBConnectionToServer):
- NetworkProcess/NetworkConnectionToWebProcess.h:
- NetworkProcess/NetworkConnectionToWebProcess.messages.in:
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::NetworkProcess):
(WebKit::NetworkProcess::initializeNetworkProcess):
(WebKit::NetworkProcess::addWebsiteDataStore):
(WebKit::NetworkProcess::fetchWebsiteData):
(WebKit::NetworkProcess::deleteWebsiteData):
(WebKit::NetworkProcess::deleteWebsiteDataForOrigins):
(WebKit::NetworkProcess::idbServer):
(WebKit::NetworkProcess::ensurePathExists):
(WebKit::NetworkProcess::postStorageTask):
(WebKit::NetworkProcess::performNextStorageTask):
(WebKit::NetworkProcess::prepareForAccessToTemporaryFile):
(WebKit::NetworkProcess::accessToTemporaryFileComplete):
(WebKit::NetworkProcess::indexedDatabaseOrigins):
(WebKit::NetworkProcess::addIndexedDatabaseSession):
(WebKit::NetworkProcess::getSandboxExtensionsForBlobFiles):
Instead of asking UI process to grant sandbox extension to storage process, now network
process just asks for sandbox extension fot itself.
(WebKit::NetworkProcess::didGetSandboxExtensionsForBlobFiles):
(WebKit::NetworkProcess::updateTemporaryFileSandboxExtensions):
(WebKit::NetworkProcess::grantSandboxExtensionsToStorageProcessForBlobs): Deleted.
(WebKit::NetworkProcess::didGrantSandboxExtensionsToStorageProcessForBlobs): Deleted.
- NetworkProcess/NetworkProcess.h:
- NetworkProcess/NetworkProcess.messages.in:
- NetworkProcess/NetworkProcessCreationParameters.cpp:
(WebKit::NetworkProcessCreationParameters::encode const):
(WebKit::NetworkProcessCreationParameters::decode):
- NetworkProcess/NetworkProcessCreationParameters.h:
- Shared/Storage/StorageProcessCreationParameters.cpp:
(WebKit::StorageProcessCreationParameters::encode const):
(WebKit::StorageProcessCreationParameters::decode):
- Shared/Storage/StorageProcessCreationParameters.h:
- Shared/WebsiteDataStoreParameters.cpp:
(WebKit::WebsiteDataStoreParameters::encode const):
(WebKit::WebsiteDataStoreParameters::decode):
(WebKit::WebsiteDataStoreParameters::privateSessionParameters):
- Shared/WebsiteDataStoreParameters.h:
- Sources.txt:
- StorageProcess/StorageProcess.cpp:
(WebKit::StorageProcess::initializeWebsiteDataStore):
(WebKit::StorageProcess::fetchWebsiteData):
(WebKit::StorageProcess::deleteWebsiteData):
(WebKit::StorageProcess::deleteWebsiteDataForOrigins):
(WebKit::StorageProcess::idbServer): Deleted.
(WebKit::StorageProcess::grantSandboxExtensionsForBlobs): Deleted.
(WebKit::StorageProcess::prepareForAccessToTemporaryFile): Deleted.
(WebKit::StorageProcess::accessToTemporaryFileComplete): Deleted.
(WebKit::StorageProcess::indexedDatabaseOrigins): Deleted.
(WebKit::StorageProcess::getSandboxExtensionsForBlobFiles): Deleted.
(WebKit::StorageProcess::didGetSandboxExtensionsForBlobFiles): Deleted.
- StorageProcess/StorageProcess.h:
(WebKit::StorageProcess::queue): Deleted.
- StorageProcess/StorageProcess.messages.in:
- StorageProcess/StorageToWebProcessConnection.cpp:
(WebKit::StorageToWebProcessConnection::didReceiveMessage):
(WebKit::StorageToWebProcessConnection::didClose):
(WebKit::generateIDBConnectionToServerIdentifier): Deleted.
(WebKit::StorageToWebProcessConnection::establishIDBConnectionToServer): Deleted.
(WebKit::StorageToWebProcessConnection::removeIDBConnectionToServer): Deleted.
- StorageProcess/StorageToWebProcessConnection.h:
- StorageProcess/StorageToWebProcessConnection.messages.in:
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::getSandboxExtensionsForBlobFiles):
(WebKit::NetworkProcessProxy::grantSandboxExtensionsToStorageProcessForBlobs): Deleted.
- UIProcess/Network/NetworkProcessProxy.h:
- UIProcess/Network/NetworkProcessProxy.messages.in:
- UIProcess/Storage/StorageProcessProxy.cpp:
(WebKit::StorageProcessProxy::getSandboxExtensionsForBlobFiles): Deleted.
- UIProcess/Storage/StorageProcessProxy.h:
- UIProcess/Storage/StorageProcessProxy.messages.in:
- UIProcess/WebProcessPool.cpp:
(WebKit::WebProcessPool::ensureNetworkProcess):
(WebKit::WebProcessPool::ensureStorageProcessAndWebsiteDataStore):
(WebKit::WebProcessPool::pageBeginUsingWebsiteDataStore):
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::parameters):
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::computeNetworkProcessAccessTypeForDataFetch):
(WebKit::WebsiteDataStore::fetchDataAndApply):
(WebKit::computeNetworkProcessAccessTypeForDataRemoval):
(WebKit::WebsiteDataStore::removeData):
(WebKit::WebsiteDataStore::storageProcessParameters):
(WebKit::WebsiteDataStore::parameters):
- WebKit.xcodeproj/project.pbxproj:
- WebProcess/Databases/IndexedDB/WebIDBConnectionToServer.cpp:
(WebKit::WebIDBConnectionToServer::WebIDBConnectionToServer):
(WebKit::WebIDBConnectionToServer::~WebIDBConnectionToServer):
(WebKit::WebIDBConnectionToServer::messageSenderConnection):
- WebProcess/Databases/WebDatabaseProvider.cpp:
(WebKit::WebDatabaseProvider::idbConnectionToServerForSession):
- WebProcess/Network/NetworkProcessConnection.cpp:
(WebKit::NetworkProcessConnection::didReceiveMessage):
(WebKit::NetworkProcessConnection::didClose):
(WebKit::NetworkProcessConnection::idbConnectionToServerForSession):
- WebProcess/Network/NetworkProcessConnection.h:
(WebKit::NetworkProcessConnection::existingIDBConnectionToServerForIdentifier const):
- WebProcess/Storage/WebToStorageProcessConnection.cpp:
(WebKit::WebToStorageProcessConnection::didReceiveMessage):
(WebKit::WebToStorageProcessConnection::didClose):
(WebKit::WebToStorageProcessConnection::idbConnectionToServerForSession): Deleted.
- WebProcess/Storage/WebToStorageProcessConnection.h:
(WebKit::WebToStorageProcessConnection::existingIDBConnectionToServerForIdentifier): Deleted.
- WebProcess/WebProcess.cpp:
(WebKit::WebProcess::networkProcessConnectionClosed):
(WebKit::WebProcess::webToStorageProcessConnectionClosed):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/IDBDeleteRecovery.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/IDBIndexUpgradeToV2.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/IndexedDBDatabaseProcessKill.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/IndexedDBMultiProcess.mm:
(TEST):
- TestWebKitAPI/Tests/WebKitCocoa/IndexedDBPersistence.mm:
(TEST):
LayoutTests:
- storage/indexeddb/modern/opendatabase-after-storage-crash.html:
Sep 16, 2018:
- 5:35 PM Changeset in webkit [236034] by
-
- 2 edits in trunk/LayoutTests
Unreviewed test gardening, mark fast/text/variations/ipc2.html as slow.
- platform/mac-wk2/TestExpectations: