Timeline
Mar 11, 2021:
- 11:14 PM Changeset in webkit [274328] by
-
- 2 edits in trunk/Source/WTF
REGRESSION (r267775): Web Share API Level 2 is incorrectly disabled
https://bugs.webkit.org/show_bug.cgi?id=223110
Reviewed by Simon Fraser.
- Scripts/Preferences/WebPreferencesExperimental.yaml:
Through a series of minor mishaps related to r267623 and r267775,
the current state of the default value of WebShareFileAPIEnabled
in modern WebKit does not match what it was changed to in r267762
(is it now instead off everywhere).
Fix this regression by copying the condition from WebShareEnabled.
- 10:57 PM Changeset in webkit [274327] by
-
- 13 edits in trunk
[GPUP] Enable 2D Canvas in layout tests by default
https://bugs.webkit.org/show_bug.cgi?id=222835
Reviewed by Simon Fraser.
Source/WTF:
Move UseGPUProcessForCanvasRenderingEnabled from WebPreferencesInternal
to WebPreferencesExperimental so that the WebKitTestRunner will turn it
on by default.
- Scripts/Preferences/WebPreferencesExperimental.yaml:
- Scripts/Preferences/WebPreferencesInternal.yaml:
LayoutTests:
Some of the canvas layout tests are still failing when GPUP is enabled
for 2D Canvas. Skip these tests for now.
- TestExpectations:
- gpu-process/TestExpectations:
- http/tests/canvas/color-fonts/fill-gradient-sbix-2.html:
- http/tests/canvas/color-fonts/fill-gradient-sbix-3.html:
- http/tests/canvas/color-fonts/fill-gradient-sbix-4.html:
- http/tests/canvas/color-fonts/stroke-gradient-sbix-2.html:
- http/tests/canvas/color-fonts/stroke-gradient-sbix-3.html:
- http/tests/canvas/color-fonts/stroke-gradient-sbix-4.html:
webkit.org/b/222881
- inspector/canvas/memory.html:
webkit.org/b/222880
- 9:56 PM Changeset in webkit [274326] by
-
- 2 edits in trunk/Source/WebCore
[GPU Process] Encoding buffer for DisplayList items should be aligned to 8 bytes
https://bugs.webkit.org/show_bug.cgi?id=223096
Reviewed by Simon Fraser.
Ensure the static array in ItemBuffer::append() is aligned to 8 bytes.
So each member in the encoded DisplayList::Item can be aligned to its
alignment requirement
- platform/graphics/displaylists/DisplayListItemBuffer.h:
(WebCore::DisplayList::ItemBuffer::append):
- 9:43 PM Changeset in webkit [274325] by
-
- 9 edits in trunk/Source
Adopt VM_FLAGS_PERMANENT for the config vm mapping
https://bugs.webkit.org/show_bug.cgi?id=222086
<rdar://74402690>
Reviewed by Yusuke Suzuki and Mark Lam.
Source/JavaScriptCore:
- runtime/JSCConfig.h:
(JSC::Config::configureForTesting):
Source/WebKit:
- Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm:
(WebKit::XPCServiceMain):
Source/WTF:
- wtf/PlatformHave.h:
- wtf/Threading.cpp:
(WTF::initialize):
- wtf/WTFConfig.cpp:
(WTF::setPermissionsOfConfigPage):
- wtf/WTFConfig.h:
(WTF::setPermissionsOfConfigPage):
- 8:48 PM Changeset in webkit [274324] by
-
- 25 edits in trunk/Source
Introduce ensureOnMainThread()
https://bugs.webkit.org/show_bug.cgi?id=223105
Reviewed by Darin Adler.
Introduce ensureOnMainThread(), similarly to the recently added ensureOnMainThreadRunLoop(). It runs
the task synchronously when on the main thread, otherwise dispatches the task to the main thread.
Source/WebCore:
- accessibility/AccessibilityObjectInterface.h:
(WebCore::Accessibility::performFunctionOnMainThread):
(WebCore::Accessibility::retrieveValueFromMainThread):
(WebCore::Accessibility::retrieveAutoreleasedValueFromMainThread):
- dom/MessagePort.cpp:
(WebCore::MessagePort::close):
- dom/messageports/MessagePortChannelProviderImpl.cpp:
(WebCore::MessagePortChannelProviderImpl::createNewMessagePortChannel):
(WebCore::MessagePortChannelProviderImpl::entangleLocalPortInThisProcessToRemote):
(WebCore::MessagePortChannelProviderImpl::messagePortDisentangled):
(WebCore::MessagePortChannelProviderImpl::messagePortClosed):
(WebCore::MessagePortChannelProviderImpl::postMessageToRemote):
(WebCore::MessagePortChannelProviderImpl::takeAllMessagesForPort):
(WebCore::MessagePortChannelProviderImpl::checkRemotePortForActivity):
(WebCore::MessagePortChannelProviderImpl::performActionOnMainThread): Deleted.
- dom/messageports/MessagePortChannelProviderImpl.h:
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::enqueueTaskForDispatcher):
- page/WheelEventTestMonitor.cpp:
(WebCore::WheelEventTestMonitor::scheduleCallbackCheck):
- platform/GenericTaskQueue.cpp:
(WebCore::TaskDispatcher<Timer>::postTask):
- platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
(ensureOnMainThread): Deleted.
- platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
(-[WebRootSampleBufferBoundsChangeListener observeValueForKeyPath:ofObject:change:context:]):
- platform/graphics/cocoa/FontCacheCoreText.cpp:
(WebCore::invalidateFontCache):
- platform/graphics/cocoa/WebCoreDecompressionSession.mm:
(WebCore::WebCoreDecompressionSession::maybeBecomeReadyForMoreMediaData):
- platform/mediastream/CaptureDeviceManager.cpp:
(WebCore::CaptureDeviceManager::deviceChanged):
- platform/mediastream/RealtimeOutgoingVideoSource.cpp:
(WebCore::RealtimeOutgoingVideoSource::applyRotation):
- platform/mediastream/mac/CoreAudioCaptureSource.cpp:
(WebCore::CoreAudioCaptureSourceFactory::beginInterruption):
(WebCore::CoreAudioCaptureSourceFactory::endInterruption):
(WebCore::CoreAudioCaptureSourceFactory::scheduleReconfiguration):
- platform/network/cocoa/WebCoreNSURLSession.mm:
(-[WebCoreNSURLSessionDataTask resource:receivedRedirect:request:completionHandler:]):
- platform/network/curl/CurlRequest.cpp:
(WebCore::CurlRequest::runOnMainThread):
Source/WebKitLegacy:
- Storage/StorageTracker.cpp:
(WebKit::StorageTracker::setOriginDetails):
Source/WTF:
- wtf/MainThread.cpp:
(WTF::ensureOnMainThread):
- wtf/MainThread.h:
- wtf/ThreadSafeRefCounted.h:
(WTF::ThreadSafeRefCounted::deref const):
- wtf/text/cf/StringImplCF.cpp:
(WTF::StringWrapperCFAllocator::deallocate):
- wtf/unix/MemoryPressureHandlerUnix.cpp:
(WTF::MemoryPressureHandler::triggerMemoryPressureEvent):
- 8:42 PM Changeset in webkit [274323] by
-
- 26 edits in trunk
Add some logging to help debug flaky quota tests
https://bugs.webkit.org/show_bug.cgi?id=222995
Patch by Sihui Liu <sihui_liu@appe.com> on 2021-03-11
Reviewed by Youenn Fablet.
Source/WebCore:
http/tests/IndexedDB/storage-limit* have been flaky on bots since they were added. Add an option to allow
printing some logging in these tests.
No new test as no behavior change in quota management.
- storage/StorageQuotaManager.cpp:
(WebCore::StorageQuotaManager::requestSpaceOnBackgroundThread):
(WebCore::StorageQuotaManager::tryGrantRequest):
(WebCore::StorageQuotaManager::setLoggingEnabled):
- storage/StorageQuotaManager.h:
Source/WebKit:
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::setQuotaLoggingEnabled):
(WebKit::NetworkProcess::storageQuotaManager):
- NetworkProcess/NetworkProcess.h:
- NetworkProcess/NetworkProcess.messages.in:
- UIProcess/API/C/WKWebsiteDataStoreRef.cpp:
(WKWebsiteDataStoreSetQuotaLoggingEnabled):
- UIProcess/API/C/WKWebsiteDataStoreRef.h:
- UIProcess/Network/NetworkProcessProxy.cpp:
(WebKit::NetworkProcessProxy::setQuotaLoggingEnabled):
- UIProcess/Network/NetworkProcessProxy.h:
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::setQuotaLoggingEnabled):
- UIProcess/WebsiteData/WebsiteDataStore.h:
Source/WebKitLegacy:
- Storage/InProcessIDBServer.cpp:
(InProcessIDBServer::quotaManager):
Tools:
- WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
- WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::setQuotaLoggingEnabled):
(WTR::TestRunner::setIsSpeechRecognitionPermissionGranted):
(WTR::TestRunner::setIsMediaKeySystemPermissionGranted):
- WebKitTestRunner/InjectedBundle/TestRunner.h:
- WebKitTestRunner/TestController.cpp:
(WTR::TestController::setQuotaLoggingEnabled):
- WebKitTestRunner/TestController.h:
- WebKitTestRunner/TestInvocation.cpp:
(WTR::TestInvocation::didReceiveSynchronousMessageFromInjectedBundle):
LayoutTests:
- http/tests/IndexedDB/storage-limit-1.https.html:
- http/tests/IndexedDB/storage-limit-2.https.html:
- http/tests/IndexedDB/storage-limit.https.html:
- 7:51 PM Changeset in webkit [274322] by
-
- 12 edits in trunk/Source
Drop some unnecessary RunLoop::isMain() / IsMainRunLoop() checks
https://bugs.webkit.org/show_bug.cgi?id=223094
Reviewed by Darin Adler.
Drop some unnecessary RunLoop::isMain() / IsMainRunLoop() checks. callOnMainThread() / ensureOnMainRunLoop()
take care of calling their lambda synchronously when already on the main runloop.
- GPUProcess/graphics/RemoteGraphicsContextGL.cpp:
(WebKit::RemoteGraphicsContextGL::copyTextureFromMedia):
- Shared/mac/MediaFormatReader/MediaFormatReader.cpp:
(WebKit::MediaFormatReader::startOnMainThread):
- UIProcess/API/Cocoa/WKURLSchemeTask.mm:
(getExceptionTypeFromMainRunLoop):
(-[WKURLSchemeTaskImpl dealloc]):
- WebProcess/GPU/media/RemoteImageDecoderAVF.cpp:
(WebKit::RemoteImageDecoderAVF::createFrameImageAtIndex):
- WebProcess/WebPage/mac/WKAccessibilityWebPageObjectBase.mm:
(-[WKAccessibilityWebPageObjectBase accessibilityPluginObject]):
- 7:24 PM Changeset in webkit [274321] by
-
- 9 edits in trunk
[GPU Process] http/tests/media/hls/hls-audio-tracks-locale-selection.html fails
https://bugs.webkit.org/show_bug.cgi?id=223102
<rdar://problem/75338802>
Reviewed by Jer Noble.
Source/WebKit:
No new tests, these changes fix an existing test.
- GPUProcess/GPUConnectionToWebProcess.cpp:
(WebKit::GPUConnectionToWebProcess::GPUConnectionToWebProcess): Set user preferred
languages if parameters.overrideLanguages isn't empty.
(WebKit::GPUConnectionToWebProcess::setUserPreferredLanguages): Set user preferred
languages.
- GPUProcess/GPUConnectionToWebProcess.h:
- GPUProcess/GPUConnectionToWebProcess.messages.in:
- Shared/GPUProcessConnectionParameters.h: Add overrideLanguages.
(WebKit::GPUProcessConnectionParameters::encode const):
(WebKit::GPUProcessConnectionParameters::decode):
- WebProcess/GPU/GPUProcessConnection.cpp:
(WebKit::languagesChanged): Send new languages to GPU process.
(WebKit::GPUProcessConnection::GPUProcessConnection): Register for language changes.
(WebKit::GPUProcessConnection::~GPUProcessConnection): Unregister.
- WebProcess/cocoa/WebProcessCocoa.mm:
(WebKit::WebProcess::platformInitializeGPUProcessConnectionParameters):Add overrideLanguages.
LayoutTests:
- platform/wk2/TestExpectations: Unskip the passing test.
- 7:09 PM Changeset in webkit [274320] by
-
- 1 copy in tags/Safari-611.1.21.81.1
Tag Safari-611.1.21.81.1.
- 6:55 PM Changeset in webkit [274319] by
-
- 2 edits in branches/safari-611.1.21.81-branch/Source/WebKit
Cherry-pick r274295. rdar://problem/75344113
[macOS] Add additional telemetry to WebContent sandbox
https://bugs.webkit.org/show_bug.cgi?id=223080
Reviewed by Brent Fulgham.
Add additional telemetry to WebContent sandbox on macOS.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- WebProcess/com.apple.WebProcess.sb.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@274295 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 6:46 PM Changeset in webkit [274318] by
-
- 8 edits in branches/safari-611.1.21.81-branch/Source
Versioning.
WebKit-7611.1.21.81.1
- 6:31 PM Changeset in webkit [274317] by
-
- 1 copy in tags/Safari-611.1.21.1.9
Tag Safari-611.1.21.1.9.
- 6:27 PM Changeset in webkit [274316] by
-
- 1 copy in branches/safari-611.1.21.81-branch
New branch.
- 6:10 PM Changeset in webkit [274315] by
-
- 2 edits in trunk/LayoutTests
REGRESSION (r274264) [MacOS Wk1] compositing/visibility/iframe-visibility-hidden.html is a flakey image failure
https://bugs.webkit.org/show_bug.cgi?id=223104
Unreviewed test gardening.
- platform/mac-wk1/TestExpectations:
- 5:37 PM Changeset in webkit [274314] by
-
- 2 edits in trunk/Tools
Adding myself as a committer in the contributors file
N/A
N/A
- Scripts/webkitpy/common/config/contributors.json: Added myself as a committer
- 4:56 PM Changeset in webkit [274313] by
-
- 2 edits in trunk/Source/WebCore
[BigSur wk1 arm64] platform/mac/fast/objc/longlongTest.html is a consistent failure.
https://bugs.webkit.org/show_bug.cgi?id=223051
Reviewed by Chris Dumez and Yusuke Suzuki.
The issue is that the test is expecting convertValueToObjcValue()'s conversion of
double to long long to follow x86_64 semantics. I don't think there's a
specification for this behavior (falls under undefined behavior). I'll just
change the code such that it emulates x86_64 behavior to placate the test.
Test covered by platform/mac/fast/objc/longlongTest.html.
- bridge/objc/objc_utility.mm:
(JSC::Bindings::convertDoubleToLongLong):
(JSC::Bindings::convertValueToObjcValue):
- 4:47 PM Changeset in webkit [274312] by
-
- 3 edits1 add in trunk
AI validator patchpoint should read heap top
https://bugs.webkit.org/show_bug.cgi?id=223052
<rdar://75087095>
Reviewed by Yusuke Suzuki.
JSTests:
- stress/private-methods-inheritance.js: Added.
(A):
(A.prototype.x):
(B.prototype.y):
(B):
Source/JavaScriptCore:
Currently, the patchpoint doesn't specify any reads, which allows it to be moved around by B3
and can cause false positives since it at least read the structure ID for comparing values.
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::validateAIState):
- 4:43 PM Changeset in webkit [274311] by
-
- 3 edits in trunk/Source/WebKit
[iOS, macOS] Re-allow WebContent sandbox permissions for specific /etc files
https://bugs.webkit.org/show_bug.cgi?id=223088
<rdar://problem/75332107>
Reviewed by Per Arne Vollan.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- WebProcess/com.apple.WebProcess.sb.in:
- 4:22 PM Changeset in webkit [274310] by
-
- 2 edits in trunk/Source/WebKit
[macOS] override the background color of PDF documents to match PDFKit
https://bugs.webkit.org/show_bug.cgi?id=223091
<rdar://problem/74584770>
Reviewed by Tim Horton.
- WebProcess/Plugins/PDF/PDFPlugin.mm:
(WebKit::PDFPlugin::PDFPlugin):
- 4:12 PM Changeset in webkit [274309] by
-
- 1 copy in tags/Safari-612.1.5.4
Tag Safari-612.1.5.4.
- 4:08 PM Changeset in webkit [274308] by
-
- 25 edits5 adds in trunk
Align JSGlobalObject::defineOwnProperty() with the spec and other runtimes
https://bugs.webkit.org/show_bug.cgi?id=203456
Reviewed by Robin Morisset.
JSTests:
- microbenchmarks/global-var-put-to-scope.js: Added.
- stress/eval-func-decl-in-frozen-global.js:
Object.freeze() redefines all global variables as ReadOnly, including hoisted
var error.
Aligns with V8.
- stress/global-object-define-own-property-put-to-scope.js: Added.
- stress/global-object-define-own-property.js: Added.
- stress/to-this-before-arrow-function-closes-over-this-that-starts-as-lexical-environment.js:
Fix unwanted name conflict, which was an error in the original test, not an intended part of it.
Also, remove misleading comment ondefinePropertyand assert accessors are created on global object.
Aligns with V8.
LayoutTests/imported/w3c:
- web-platform-tests/html/browsers/the-windowproxy-exotic-object/windowproxy-define-own-property-unforgeable-same-origin-expected.txt: Added.
- web-platform-tests/html/browsers/the-windowproxy-exotic-object/windowproxy-define-own-property-unforgeable-same-origin.html: Added.
Source/JavaScriptCore:
Per spec, top-level
varbindings are non-configurable properties of the global
object [1], whileundefined/NaN/Infinityare also non-writable [2].
Prior to this change, redefining global
varbinding with accessor descriptor
failed silently (rather than throwing a TypeError); redefining with data or
generic descriptor created a structure property, which took precedence over
symbol table entry in JSGlobalObject::getOwnPropertySlot(), effectively
destroying live binding betweenglobal.fooandvar foo.
This patch re-engineers JSGlobalObject::defineOwnProperty(), fixing both issues
mentioned above. If defineOwnProperty() override is removed, there is no way
a live binding can be maintained.
In a follow-up change, JSGlobalObject::getOwnPropertySlot() will be updated to
search symbol table first, aligning it with the spec [3], put(), and
defineOwnProperty(). Apart from consistency, this will bring a mild speed-up.
To accomodate global
varbinding reassignment right after it becomes read-only
(in the same scope), this patch introduces a watchpoint that can be fired by
JSGlobalObject::defineOwnProperty(). put_to_scope performance is neutral.
Also, this patch removes unused symbolTableGet() overload and orphaned
JSGlobalObject::defineGetter() / JSGlobalObject::defineSetter() declarations.
[1]: https://tc39.es/ecma262/#sec-object-environment-records-createmutablebinding-n-d
[2]: https://tc39.es/ecma262/#sec-value-properties-of-the-global-object
[3]: https://tc39.es/ecma262/#sec-global-environment-records-getbindingvalue-n-s
- dfg/DFGByteCodeParser.cpp:
(JSC::DFG::ByteCodeParser::needsDynamicLookup):
(JSC::DFG::ByteCodeParser::parseBlock):
- jit/JIT.cpp:
(JSC::JIT::emitVarReadOnlyCheck):
- jit/JIT.h:
- jit/JITPropertyAccess.cpp:
(JSC::JIT::emit_op_put_to_scope):
- jit/JITPropertyAccess32_64.cpp:
(JSC::JIT::emit_op_put_to_scope):
- llint/LowLevelInterpreter.asm:
- llint/LowLevelInterpreter32_64.asm:
- llint/LowLevelInterpreter64.asm:
- runtime/JSGlobalObject.cpp:
(JSC::JSGlobalObject::JSGlobalObject):
(JSC::JSGlobalObject::defineOwnProperty):
- runtime/JSGlobalObject.h:
(JSC::JSGlobalObject::varReadOnlyWatchpoint):
- runtime/JSSymbolTableObject.h:
(JSC::symbolTableGet):
Source/WebCore:
This patch removes
locationspecial-casing, which a) incorrectly returned
falseif new descriptor was the same as the current one and b) failed
silently otherwise (rather than throwing a TypeError).
However, this change introduces
window/documentspecial-casing because
they exist on the structure and as symbol table entries (for performance reasons).
Aligns WebKit with Blink and partly with Gecko.
Test: imported/w3c/web-platform-tests/html/browsers/the-windowproxy-exotic-object/windowproxy-define-own-property-unforgeable-same-origin.html
- bindings/js/JSDOMWindowCustom.cpp:
(WebCore::JSDOMWindow::defineOwnProperty):
LayoutTests:
- fast/dom/Window/Location/window-override-location-using-defineGetter-expected.txt:
- fast/dom/Window/Location/window-override-location-using-defineGetter.html:
- fast/dom/Window/Location/window-override-window-using-defineGetter-expected.txt:
- fast/dom/Window/Location/window-override-window-using-defineGetter.html:
- fast/dom/getter-on-window-object2-expected.txt:
- fast/dom/getter-on-window-object2.html:
- 4:01 PM Changeset in webkit [274307] by
-
- 34 edits in trunk
Introduce WorkQueue::main() to get the main thread's work queue
https://bugs.webkit.org/show_bug.cgi?id=223087
Reviewed by Geoffrey Garen.
Introduce WorkQueue::main() to get the main thread's work queue. This allows us to port some more code from
dispatch_queue to WorkQueue. It also simplifies some code that has to deal that sometimes needs to run on
the main thread and other times on a background queue. Having a single WorkQueue type to represent both the
main thread and a background queue makes writing such code more convenient.
Source/WebCore:
- platform/ios/WebVideoFullscreenControllerAVKit.mm:
(VideoFullscreenControllerContext::~VideoFullscreenControllerContext):
- platform/ios/wak/WebCoreThread.mm:
(WebThreadRunOnMainThread):
Source/WebKit:
- NetworkProcess/cache/CacheStorageEngine.cpp:
(WebKit::CacheStorage::Engine::writeFile):
(WebKit::CacheStorage::Engine::readFile):
- NetworkProcess/cache/CacheStorageEngineCaches.cpp:
(WebKit::CacheStorage::Caches::retrieveOriginFromDirectory):
- NetworkProcess/cache/NetworkCacheIOChannel.h:
- NetworkProcess/cache/NetworkCacheIOChannelCocoa.mm:
(WebKit::NetworkCache::IOChannel::read):
(WebKit::NetworkCache::IOChannel::write):
- NetworkProcess/cache/NetworkCacheIOChannelCurl.cpp:
(WebKit::NetworkCache::IOChannel::read):
(WebKit::NetworkCache::IOChannel::write):
- NetworkProcess/cache/NetworkCacheIOChannelGLib.cpp:
(WebKit::NetworkCache::inputStreamReadReadyCallback):
(WebKit::NetworkCache::IOChannel::read):
(WebKit::NetworkCache::IOChannel::readSyncInThread):
(WebKit::NetworkCache::outputStreamWriteReadyCallback):
(WebKit::NetworkCache::IOChannel::write):
- NetworkProcess/cache/NetworkCacheStorage.cpp:
(WebKit::NetworkCache::Storage::dispatchReadOperation):
(WebKit::NetworkCache::Storage::dispatchWriteOperation):
(WebKit::NetworkCache::Storage::traverse):
- Shared/Cocoa/WebKit2InitializeCocoa.mm:
(WebKit::InitializeWebKit2):
- Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm:
(WebKit::XPCServiceEventHandler):
- UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(+[WKBrowsingContextController registerSchemeForCustomProtocol:]):
(+[WKBrowsingContextController unregisterSchemeForCustomProtocol:]):
- UIProcess/Cocoa/WebPageProxyCocoa.mm:
(WebKit::WebPageProxy::scheduleActivityStateUpdate):
- UIProcess/PDF/WKPDFHUDView.mm:
(-[WKPDFHUDView initWithFrame:pluginIdentifier:page:]):
- UIProcess/WebsiteData/WebsiteDataStore.cpp:
(WebKit::WebsiteDataStore::fetchData):
(WebKit::WebsiteDataStore::fetchDataAndApply):
- UIProcess/WebsiteData/WebsiteDataStore.h:
- UIProcess/ios/ProcessAssertionIOS.mm:
(-[WKProcessAssertionBackgroundTaskManager _scheduleReleaseTask]):
- UIProcess/ios/WKContentViewInteraction.mm:
(-[WKContentView requestRectsToEvadeForSelectionCommandsWithCompletionHandler:]):
- UIProcess/ios/WebPageProxyIOS.mm:
(WebKit::WebPageProxy::willOpenAppLink):
- UIProcess/mac/ServicesController.mm:
(WebKit::ServicesController::refreshExistingServices):
Source/WebKitLegacy/mac:
- Misc/WebDownload.mm:
(callOnDelegateThreadAndWait):
Source/WTF:
- wtf/WorkQueue.cpp:
(WTF::WorkQueue::main):
- wtf/WorkQueue.h:
- wtf/cocoa/WorkQueueCocoa.cpp:
(WTF::WorkQueue::constructMainWorkQueue):
(WTF::WorkQueue::WorkQueue):
- wtf/generic/WorkQueueGeneric.cpp:
(WorkQueue::constructMainWorkQueue):
(WorkQueue::WorkQueue):
Tools:
- DumpRenderTree/ios/UIScriptControllerIOS.mm:
(WTR::UIScriptControllerIOS::doAsyncTask):
- DumpRenderTree/mac/DumpRenderTree.mm:
(-[DumpRenderTree _webThreadInvoked]):
- DumpRenderTree/mac/UIScriptControllerMac.mm:
(WTR::UIScriptControllerMac::doAsyncTask):
(WTR::UIScriptControllerMac::activateDataListSuggestion):
(WTR::UIScriptControllerMac::removeViewFromWindow):
(WTR::UIScriptControllerMac::addViewToWindow):
- WebKitTestRunner/mac/UIScriptControllerMac.mm:
(WTR::UIScriptControllerMac::activateDataListSuggestion):
(WTR::UIScriptControllerMac::chooseMenuAction):
(WTR::UIScriptControllerMac::activateAtPoint):
- 3:59 PM Changeset in webkit [274306] by
-
- 9 edits in trunk/Source
Use CallOnMainThreadAndWait() instead of CallAndMainThread() + BinarySemaphore
https://bugs.webkit.org/show_bug.cgi?id=223093
Reviewed by Geoffrey Garen.
Source/WebCore:
- Modules/webaudio/ScriptProcessorNode.cpp:
(WebCore::ScriptProcessorNode::process):
- fileapi/ThreadableBlobRegistry.cpp:
(WebCore::ThreadableBlobRegistry::blobSize):
- platform/glib/FileMonitorGLib.cpp:
- platform/graphics/avfoundation/objc/LocalSampleBufferDisplayLayer.mm:
- platform/mock/MockAudioDestinationCocoa.cpp:
Source/WebKit:
- NetworkProcess/WebStorage/StorageManagerSet.cpp:
- UIProcess/API/glib/IconDatabase.cpp:
- 3:55 PM Changeset in webkit [274305] by
-
- 3 edits in trunk/Source/WebCore
[macOS] Selecting text via mouse drag in image documents shouldn't trigger click events
https://bugs.webkit.org/show_bug.cgi?id=223075
Reviewed by Tim Horton.
Improve image overlay support in image documents, by setting
-webkit-user-select: text;on the image overlay
container andcursor: text;on each of the text children. Additionally, make it so that text selection in
image overlays doesn't trigger a click event, so that attempting to select text doesn't trigger click events.
- html/HTMLElement.cpp:
(WebCore::HTMLElement::updateWithImageExtractionResult):
- page/EventHandler.cpp:
(WebCore::EventHandler::updateSelectionForMouseDrag):
- 3:54 PM Changeset in webkit [274304] by
-
- 2 edits in trunk/Source/WTF
Use BinarySemaphore in callOnMainAndWait()
https://bugs.webkit.org/show_bug.cgi?id=223092
Reviewed by Geoffrey Garen.
Use BinarySemaphore in callOnMainAndWait() instead of a Condition, this simplifies the code
a bit. Also templatize the function to make sure we avoid any runtime checks for the
the "mainStyle".
- wtf/MainThread.cpp:
(WTF::callOnMainAndWait):
(WTF::callOnMainRunLoopAndWait):
(WTF::callOnMainThreadAndWait):
- 3:11 PM Changeset in webkit [274303] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector:
WI.Object.singleFireEventListenershould not keep a strong reference tothisObject
https://bugs.webkit.org/show_bug.cgi?id=223090
Reviewed by BJ Burg.
- UserInterface/Base/Object.js:
(WI.Object.addEventListener):
(WI.Object.singleFireEventListener):
- 3:06 PM Changeset in webkit [274302] by
-
- 3 edits in trunk/Source/WebKit
Adopt WKSeparatedModelView for <model>
https://bugs.webkit.org/show_bug.cgi?id=223085
<rdar://problem/75330603>
Reviewed by Sam Weinig.
- UIProcess/RemoteLayerTree/ios/RemoteLayerTreeHostIOS.mm:
(WebKit::RemoteLayerTreeHost::makeNode):
- UIProcess/RemoteLayerTree/ios/RemoteLayerTreeViews.h:
Make a WKSeparatedModelView for <model>'s UI-side view if available.
- 2:41 PM Changeset in webkit [274301] by
-
- 10 edits in trunk
[iOS][FCR] Update disabled state for button-like controls
https://bugs.webkit.org/show_bug.cgi?id=222318
<rdar://problem/74645980>
Reviewed by Wenson Hsieh.
Source/WebCore:
Update the disabled state for all button-like controls to match the
latest specification. The default disabled state is dark gray text
on a light gray background.
- css/html.css:
(input:matches([type="button"], [type="submit"], [type="reset"]):disabled,):
(input[type="checkbox"]:indeterminate:disabled):
(input:matches([type="checkbox"], [type="radio"]):disabled):
(input:matches([type="checkbox"], [type="radio"]):checked:disabled):
- css/legacyFormControlsIOS.css:
(input[type="checkbox"]:indeterminate:disabled,):
(input:matches([type="button"], [type="submit"], [type="reset"]):disabled,):
(input[type="file"]:disabled):
(input:matches([type="date"], [type="time"], [type="datetime-local"], [type="month"], [type="week"]):disabled):
- rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::paintCheckbox):
(WebCore::RenderThemeIOS::paintRadio):
(WebCore::RenderThemeIOS::paintMenuListButtonDecorationsWithFormControlRefresh):
LayoutTests:
Rebaslined tests to account for the new disabled appearance.
- platform/ios/fast/forms/basic-inputs-expected.txt:
- platform/ios/fast/forms/basic-selects-expected.txt:
- platform/ios/fast/forms/disabled-select-change-index-expected.txt:
- platform/ios/fast/forms/file/file-input-disabled-expected.txt:
- platform/ios/fast/forms/select-disabled-appearance-expected.txt:
- 2:40 PM Changeset in webkit [274300] by
-
- 2 edits in trunk/Source/WebCore
Use BinarySemaphore in SerializedScriptValue::writeBlobsToDiskForIndexedDBSynchronously()
https://bugs.webkit.org/show_bug.cgi?id=223089
Reviewed by Geoffrey Garen.
Use BinarySemaphore in SerializedScriptValue::writeBlobsToDiskForIndexedDBSynchronously() instead of a
Condition. This simplifies the code a bit. Also use callOnMainThread() instead of a main RunLoop
dispatch. We're in WebCore and it seems safer with regards to iOS WK1 (WebThread).
- bindings/js/SerializedScriptValue.cpp:
(WebCore::SerializedScriptValue::writeBlobsToDiskForIndexedDBSynchronously):
- 1:48 PM WebKitGTK/2.32.x edited by
- (diff)
- 1:48 PM WebKitGTK/2.32.x edited by
- (diff)
- 1:36 PM Changeset in webkit [274299] by
-
- 11 edits3 copies8 moves2 adds1 delete in trunk
[macCatalyst] media controls should have macOS styling and behavior
https://bugs.webkit.org/show_bug.cgi?id=223078
<rdar://problem/71857091>
Reviewed by Eric Carlson.
Source/WebCore:
- Modules/mediacontrols/MediaControlsHost.idl:
- Modules/mediacontrols/MediaControlsHost.h:
(WebCore::MediaControlsHost::setSimulateCompactMode): Deleted.
- Modules/mediacontrols/MediaControlsHost.cpp:
(WebCore::MediaControlsHost::platform const): Added.
(WebCore::MediaControlsHost::compactMode const): Deleted.
- rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::mediaControlsScript):
CombinecompactModeandwindow.isIOSFamily = true;intoMediaControlsHost::platform
and add support forPLATFORM(MACCATALYST).
- Modules/modern-media-controls/controls/layout-item.js:
- Modules/modern-media-controls/controls/icon-service.js:
(IconService.prototype._fileNameAndPlatformForIconAndLayoutTraits):
- Modules/modern-media-controls/media/media-controller.js:
(MediaController.prototype.get layoutTraits):
(MediaController.prototype._supportingObjectClasses):
(MediaController.prototype._controlsClassForLayoutTraits):
(MediaController.prototype._shouldControlsBeAvailable):
Treat"maccatalyst"asLayoutTraits.macOS.
ReplaceLayoutTraits.CompactwithLayoutTraits.watchOS.
- Modules/modern-media-controls/controls/watchos-activity-indicator.js: Renamed from Modules/modern-media-controls/controls/compact-activity-indicator.js.
- Modules/modern-media-controls/controls/watchos-activity-indicator.css: Renamed from Modules/modern-media-controls/controls/compact-activity-indicator.css.
- Modules/modern-media-controls/controls/watchos-media-controls.js: Renamed from Modules/modern-media-controls/controls/compact-media-controls.js.
- Modules/modern-media-controls/controls/watchos-media-controls.css: Renamed from Modules/modern-media-controls/controls/compact-media-controls.css.
- Modules/modern-media-controls/media/watchos-media-controls-support.js: Renamed from Modules/modern-media-controls/media/compact-media-controls-support.js.
- Modules/modern-media-controls/images/watchOS/InvalidCircle.pdf: Renamed from Modules/modern-media-controls/images/watchOS/InvalidCompact.pdf.
- Modules/modern-media-controls/images/watchOS/PlayCircle.pdf: Renamed from Modules/modern-media-controls/images/watchOS/PlayCompact.pdf.
- Modules/modern-media-controls/images/watchOS/SpinnerSprite@2x.png: Renamed from Modules/modern-media-controls/images/watchOS/ActivityIndicatorSpriteCompact@2x.png.
Rename
Compact*/.compact*toWatchOS*/.watchos*.
- Modules/modern-media-controls/js-files:
- WebCore.xcodeproj/project.pbxproj:
Drive-by: Add missing JS/CSS files.
LayoutTests:
- media/modern-media-controls/watchos-media-controls/watchos-media-controls-constructor.html: Renamed from media/modern-media-controls/compact-media-controls/compact-media-controls-constructor.html.
- media/modern-media-controls/watchos-media-controls/watchos-media-controls-constructor-expected.txt: Renamed from media/modern-media-controls/compact-media-controls/compact-media-controls-constructor-expected.txt.
- media/modern-media-controls/watchos-media-controls/watchos-media-controls-layout.html: Renamed from media/modern-media-controls/compact-media-controls/compact-media-controls-layout.html.
- media/modern-media-controls/watchos-media-controls/watchos-media-controls-layout-expected.txt: Renamed from media/modern-media-controls/compact-media-controls/compact-media-controls-layout-expected.txt.
- 1:14 PM Changeset in webkit [274298] by
-
- 2 edits in branches/safari-611.1.21.1-branch/Source/WebKit
Cherry-pick r274295. rdar://problem/75290553
[macOS] Add additional telemetry to WebContent sandbox
https://bugs.webkit.org/show_bug.cgi?id=223080
Reviewed by Brent Fulgham.
Add additional telemetry to WebContent sandbox on macOS.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- WebProcess/com.apple.WebProcess.sb.in:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@274295 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 12:59 PM Changeset in webkit [274297] by
-
- 5 edits in trunk
Revert r260302
https://bugs.webkit.org/show_bug.cgi?id=223048
Patch by Alex Christensen <achristensen@webkit.org> on 2021-03-11
Reviewed by Geoffrey Garen.
Source/WebKit:
r260302 was based on the faulty assumption that if we receive bytes from a server after a client certificate challenge,
it must've accepted the client certificate we provided and we should always provide this certificate to this server.
This assumption is faulty because there are servers that request a client certificate but provide a response if you do
not provide a certificate that it accepts. I'm removing this code because as part of my investigation of rdar://73974226
I found that it did not help anything, and since then I committed r269162 which did help solve that problem.
- NetworkProcess/cocoa/NetworkSessionCocoa.h:
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(-[WKNetworkSessionDelegate URLSession:task:willPerformHTTPRedirection:newRequest:completionHandler:]):
(-[WKNetworkSessionDelegate URLSession:task:_schemeUpgraded:completionHandler:]):
(-[WKNetworkSessionDelegate URLSession:task:didReceiveChallenge:completionHandler:]):
(-[WKNetworkSessionDelegate URLSession:task:didCompleteWithError:]):
(-[WKNetworkSessionDelegate URLSession:dataTask:didReceiveResponse:completionHandler:]):
(WebKit::NetworkSessionCocoa::clientCertificateSuggestedForHost): Deleted.
(WebKit::NetworkSessionCocoa::taskServerConnectionSucceeded): Deleted.
(WebKit::NetworkSessionCocoa::taskFailed): Deleted.
(WebKit::NetworkSessionCocoa::successfulClientCertificateForHost const): Deleted.
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/Challenge.mm:
(TestWebKitAPI::clientCertServer): Deleted.
(TestWebKitAPI::BlockPtr<void): Deleted.
(TestWebKitAPI::countClientCertChallenges): Deleted.
- 12:47 PM Changeset in webkit [274296] by
-
- 15 edits in trunk/Source
Replace some usage of dispatch_queue with WorkQueue now that it supports sync dispatching
https://bugs.webkit.org/show_bug.cgi?id=223073
Reviewed by Darin Adler.
Replace some usage of dispatch_queue with WorkQueue now that it supports sync dispatching
since r274286.
- Shared/Cocoa/DefaultWebBrowserChecks.mm:
(WebKit::itpQueue):
(WebKit::determineITPState):
(WebKit::doesAppHaveITPEnabled):
- 12:43 PM Changeset in webkit [274295] by
-
- 3 edits in trunk/Source/WebKit
[macOS] Add additional telemetry to WebContent sandbox
https://bugs.webkit.org/show_bug.cgi?id=223080
Reviewed by Brent Fulgham.
Add additional telemetry to WebContent sandbox on macOS.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- WebProcess/com.apple.WebProcess.sb.in:
- 12:37 PM Changeset in webkit [274294] by
-
- 3 edits in trunk/Source/WebKit
[WPE] WebKitMediaKeySystemPermissionRequest.h missing in top-level header
https://bugs.webkit.org/show_bug.cgi?id=223076
Patch by Philippe Normand <pnormand@igalia.com> on 2021-03-11
Reviewed by Adrian Perez de Castro.
- UIProcess/API/wpe/WebKitMediaKeySystemPermissionRequest.h: Fix copy/paste mistake from GTK version of this
header.
- UIProcess/API/wpe/webkit.h: The WebKitMediaKeySystemPermissionRequest header has to be
included here so apps can consume this new API.
- 12:33 PM Changeset in webkit [274293] by
-
- 6 edits in trunk
Video controls stay on screen indefinitely after interacting with time scrubber
https://bugs.webkit.org/show_bug.cgi?id=223081
<rdar://problem/73935705>
Reviewed by Eric Carlson.
Source/WebCore:
Test: media/modern-media-controls/tracks-panel/tracks-panel-prevent-controls-bar-from-fading.html
- Modules/modern-media-controls/controls/auto-hide-controller.js:
(AutoHideController):
(AutoHideController.prototype.set fadesWhileIdle):
(AutoHideController.prototype.get hasSecondaryUIAttached): Added.
(AutoHideController.prototype.set hasSecondaryUIAttached): Added.
(AutoHideController.prototype.handleEvent):
(AutoHideController.prototype.mediaControlsFadedStateDidChange):
(AutoHideController.prototype.mediaControlsBecameInvisible):
(AutoHideController.prototype.get _canFadeControls): Added.
(AutoHideController.prototype._resetAutoHideTimer):
(AutoHideController.prototype._autoHideTimerFired):
(AutoHideController.prototype._cancelNonEnforcedAutoHideTimer): Deleted.
Simplify the logic ofAutoHideControllerto always listen for"pointer*"events instead
of adding/removing them depending onset fadesWhileIdle. This was problematic because when
the media is paused,ControlsVisibilitySupportwill disablefadesWhileIdle, removing all
"pointer*"event listeners, only to re-add them as soon as the media is resumed (this is
especially bad when clicking on the time scrubber track to seek, as this will pause and then
resume the media in rapid succession). Remove_enforceAutoHideTimeras there's no case
where we wouldn't want to be able to delay/cancel the auto-hide based on user interaction.
- Modules/modern-media-controls/controls/media-controls.js:
(MediaControls.prototype.hideTracksPanel):
Now thatset hasSecondaryUIAttachedalso calls_resetAutoHideTimer, don't manually set
this.fadedand instead use the logic/timing inAutoHideController.
LayoutTests:
- media/modern-media-controls/tracks-panel/tracks-panel-prevent-controls-bar-from-fading.html:
- media/modern-media-controls/tracks-panel/tracks-panel-prevent-controls-bar-from-fading-expected.txt:
- 12:17 PM Changeset in webkit [274292] by
-
- 4 edits in trunk/LayoutTests
[Mac] http/tests/media/video-play-stall.html is flakey
https://bugs.webkit.org/show_bug.cgi?id=148597
<rdar://problem/22484300>
Reviewed by Jer Noble.
- http/tests/media/video-play-stall.html: Increase the amount of data loaded before
stalling because the test assumes that playback begins before the 'stalled' event
is fired, and AVFoundation has become much more conservative about predicting when
is is possible to begin playing without running out of data.
- platform/mac/TestExpectations:
- platform/wk2/TestExpectations:
- 11:27 AM Changeset in webkit [274291] by
-
- 7 edits in trunk
Use tagged pointers in more places in the MetaAllocator code.
https://bugs.webkit.org/show_bug.cgi?id=223055
rdar://69971224
Reviewed by Saam Barati.
Source/WTF:
- Made the MetaAllocatorPtr constructor that takes a raw pointer private, and only call it from a static factory method, MetaAllocatorPtr::makeFromRawPointer() to make it clear that we're using an untagged pointer as a source.
- Added a MetaAllocatorPtr constructor that retags a pointer. This allows minimizes the window of working with an untagged pointer.
- Assert that MetaAllocator::addFreshFreeSpace() is only called at system initialization time.
- Removed an unused MetaAllocator::FreeSpaceNode constructor.
- wtf/MetaAllocator.cpp:
(WTF::MetaAllocator::release):
(WTF::MetaAllocatorHandle::MetaAllocatorHandle):
(WTF::MetaAllocatorHandle::shrink):
(WTF::MetaAllocator::allocate):
(WTF::MetaAllocator::addFreshFreeSpace):
- wtf/MetaAllocator.h:
(WTF::MetaAllocator::FreeSpaceNode::FreeSpaceNode): Deleted.
- wtf/MetaAllocatorHandle.h:
- wtf/MetaAllocatorPtr.h:
(WTF::MetaAllocatorPtr::makeFromRawPointer):
(WTF::MetaAllocatorPtr::MetaAllocatorPtr):
Tools:
- TestWebKitAPI/Tests/WTF/MetaAllocator.cpp:
- 11:25 AM Changeset in webkit [274290] by
-
- 2 edits in trunk/Source/WebKit
REGRESSION(r274270): Broke WebKitSecurityOrigin docs
https://bugs.webkit.org/show_bug.cgi?id=223077
Patch by Michael Catanzaro <Michael Catanzaro> on 2021-03-11
Reviewed by Darin Adler.
- UIProcess/API/glib/WebKitSecurityOrigin.cpp:
- 11:04 AM Changeset in webkit [274289] by
-
- 2 edits in trunk/Source/WebKit
[macOS] Add message filtering check in sandbox
https://bugs.webkit.org/show_bug.cgi?id=223072
<rdar://75314821>
Reviewed by Brent Fulgham.
Message filters cannot be applied unconditionally; their presence needs to be checked first.
- WebProcess/com.apple.WebProcess.sb.in:
- 10:52 AM Changeset in webkit [274288] by
-
- 2 edits in trunk/Source/JavaScriptCore
Web Inspector: Occasional crash under RemoteConnectionToTargetCocoa::close()
https://bugs.webkit.org/show_bug.cgi?id=223038
<rdar://74920246>
Reviewed by Alex Christensen.
- inspector/remote/cocoa/RemoteConnectionToTargetCocoa.mm:
(Inspector::RemoteConnectionToTarget::setup):
(Inspector::RemoteConnectionToTarget::close):
Don't use a capture default, and copy the targetIdentifier.
- 10:17 AM WebKitGTK/2.32.x edited by
- (diff)
- 10:10 AM Changeset in webkit [274287] by
-
- 8 edits in trunk
Apply transferred min/max sizes for intrinsic sizing
https://bugs.webkit.org/show_bug.cgi?id=222557
Patch by Rob Buis <rbuis@igalia.com> on 2021-03-11
Reviewed by Alex Christensen.
Source/WebCore:
Apply transferred min/max sizes for intrinsic sizing [1].
Rename RenderObject::hasAspectRatio to hasIntrinsicAspectRatio
to not be confused with RenderStyle::hasAspectRatio.
Behavior matches Firefox and Chrome.
[1] https://drafts.csswg.org/css-sizing-4/#aspect-ratio-size-transfers
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::dirtyForLayoutFromPercentageHeightDescendants):
- rendering/RenderBox.cpp:
(WebCore::RenderBox::needsPreferredWidthsRecalculation const):
(WebCore::RenderBox::computePreferredLogicalWidths):
- rendering/RenderFlexibleBox.cpp:
(WebCore::childHasAspectRatio):
(WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax):
- rendering/RenderObject.h:
(WebCore::RenderObject::hasIntrinsicAspectRatio const):
(WebCore::RenderObject::hasAspectRatio const): Deleted.
- rendering/RenderReplaced.cpp:
(WebCore::RenderReplaced::computeIntrinsicRatioInformation const):
LayoutTests:
Enable tests that pass now.
- 10:00 AM Changeset in webkit [274286] by
-
- 14 edits in trunk
Introduce WorkQueue::dispatchSync()
https://bugs.webkit.org/show_bug.cgi?id=223049
Reviewed by Alex Christensen.
Source/WebCore:
Adopt WorkQueue::dispatchSync().
- platform/glib/FileMonitorGLib.cpp:
(WebCore::FileMonitor::FileMonitor):
(WebCore::FileMonitor::~FileMonitor):
- platform/graphics/avfoundation/objc/LocalSampleBufferDisplayLayer.mm:
(WebCore::LocalSampleBufferDisplayLayer::~LocalSampleBufferDisplayLayer):
Source/WebKit:
Adopt WorkQueue::dispatchSync().
- NetworkProcess/WebStorage/StorageManagerSet.cpp:
(WebKit::StorageManagerSet::waitUntilTasksFinished):
(WebKit::StorageManagerSet::waitUntilSyncingLocalStorageFinished):
- UIProcess/API/glib/IconDatabase.cpp:
(WebKit::IconDatabase::IconDatabase):
(WebKit::IconDatabase::~IconDatabase):
Source/WTF:
Introduce WorkQueue::dispatchSync(), which relies on GCD's dispatch_sync() internally on Cocoa
ports. For other ports, it relies on a BinarySemaphore for synchronization.
- wtf/WorkQueue.cpp:
(WTF::WorkQueue::dispatchSync):
- wtf/WorkQueue.h:
- wtf/cocoa/WorkQueueCocoa.cpp:
(WTF::WorkQueue::dispatchSync):
Tools:
Add API test coverage.
- TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
- TestWebKitAPI/Tests/WTF/WorkQueue.cpp:
(TestWebKitAPI::TEST):
- TestWebKitAPI/glib/WebKitGLib/WebKitTestServer.cpp:
(WebKitTestServer::run):
- 9:58 AM Changeset in webkit [274285] by
-
- 2 edits in branches/safari-611.1.21.1-branch/Source/WebKit
"Revert r274266. rdar://problem/75290553"
This reverts commit b476dd75db068cab654d25c9eb895bbd5cc60526.
- 9:57 AM Changeset in webkit [274284] by
-
- 2 edits in trunk/Source/WebCore
Cleanup RenderFlexibleBox
https://bugs.webkit.org/show_bug.cgi?id=222976
Patch by Rob Buis <rbuis@igalia.com> on 2021-03-11
Reviewed by Sergio Villar Senin.
Various RenderFlexibleBox cleanups.
- rendering/RenderFlexibleBox.cpp:
(WebCore::RenderFlexibleBox::computeMainAxisExtentForChild):
(WebCore::RenderFlexibleBox::adjustChildSizeForMinAndMax):
(WebCore::RenderFlexibleBox::childHasIntrinsicMainAxisSize const):
(WebCore::RenderFlexibleBox::alignChildren):
- 9:37 AM Changeset in webkit [274283] by
-
- 4 edits in trunk
REGRESSION(r272293) WebArchives originally loaded over HTTP fail to load subresources that would be upgraded to HTTPS
https://bugs.webkit.org/show_bug.cgi?id=223044
<rdar://75228599>
Patch by Alex Christensen <achristensen@webkit.org> on 2021-03-11
Reviewed by Chris Dumez.
Source/WebCore:
Existing WebArchive content has keys that are URLs that have the "http" scheme.
To continue to successfully load these WebArchives, if we can't find a resource and we tried an HTTPS URL,
also try the HTTP URL because it may have been upgraded from HTTP to HTTPS in the loader.
We aren't going to the network anyways, so there is no advantage in pretending to use HTTPS.
- loader/archive/ArchiveResourceCollection.cpp:
(WebCore::ArchiveResourceCollection::archiveResourceForURL):
Tools:
- TestWebKitAPI/Tests/mac/LoadWebArchive.mm:
(TestWebKitAPI::TEST):
- 9:31 AM Changeset in webkit [274282] by
-
- 4 edits in trunk
Text manipulation: ignore leading and trailing spaces when comparing content for all tokens
https://bugs.webkit.org/show_bug.cgi?id=223057
<rdar://73706436>
Reviewed by Ryosuke Niwa.
Source/WebCore:
In r265361, we started to ignore leading and trailing spaces for first and last tokens in a paragraph. That's
not enough because one paragraph can also contain multiple nodes. Space between two nodes may be collapsed when
two nodes become separated by a new line. In the added test: the space after 'and' is collapsed when div's width
is changed, because TextManipulationController ignores collapsed space, it would compare ' and' with ' and ',
and returns ContentChanged error.
API test: TextManipulation.CompleteTextManipulationParagraphContainsCollapsedSpaces
- editing/TextManipulationController.cpp:
(WebCore::TextManipulationController::replace):
Tools:
- TestWebKitAPI/Tests/WebKitCocoa/TextManipulation.mm:
(TestWebKitAPI::TEST):
- 9:12 AM Changeset in webkit [274281] by
-
- 7 edits in trunk/LayoutTests
[GPUP] Some modern-media-controls tests are flaky when media in GPU Process is enabled
https://bugs.webkit.org/show_bug.cgi?id=221685
Reviewed by Eric Carlson.
Fix two flaky tests related to video fullscreen by:
1) Enable "MockVideoPresentationMode".
2) Wait for a video presentation mode change to complete before moving to the next step in the test.
3) Request the video to exit fullscreen before finish the test (to avoid interference with other tests).
- media/modern-media-controls/controls-visibility-support/controls-visibility-support-fullscreen-on-video-expected.txt:
- media/modern-media-controls/controls-visibility-support/controls-visibility-support-fullscreen-on-video.html:
- media/modern-media-controls/media-controller/media-controller-fade-controls-when-entering-fullscreen-expected.txt:
- media/modern-media-controls/media-controller/media-controller-fade-controls-when-entering-fullscreen.html:
- platform/mac/TestExpectations:
- platform/wk2/TestExpectations:
- 9:03 AM Changeset in webkit [274280] by
-
- 2 edits in branches/safari-611.1.21.1-branch/Source/ThirdParty/libwebrtc
Cherry-pick r274237. rdar://problem/75316929
CRASH in MergeUVRow_AVX2
https://bugs.webkit.org/show_bug.cgi?id=222996
<rdar://75183835>
Reviewed by Geoff Garen.
Crash logging shows occasional crashes in MergeUVRow_AVX2. These crashes all occur when
calling -[AVAssetImageGenerator copyCGImageAtTime:actualTime:error:]. This path is only used
when there was no prior image generated, and a new image is not available from
AVPlayerItemVideoOutput, which is a scenario which only occurs when doing a software-paint
immedately after a <video> element begins loading. While we should probably stop using
AVAssetImageGenerator, that would be a much riskier change, and wouldn't address the
underlying cause of the crash. Instead, bailing out early when in this state would cause
decoding to fail, but since this scenario only appears to occur for the
AVAssetImageGenerator path, painting would quickly recover as soon as
AVPlayerItemVideoOutput begins emitting frames.
The explanation for these crashes seems to be a mismatch between the size of the libvpx
output frame and the size of the CVPixelBuffer where the converted frame data is being
stored. Add a pre-flight check that will bail out early in this scenario.
- Source/webrtc/sdk/WebKit/WebKitUtilities.mm: (webrtc::CopyVideoFrameToPixelBuffer):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@274237 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 8:25 AM Changeset in webkit [274279] by
-
- 8 edits in trunk/Source/WebKit
Add camera-related sandbox extensions to GPUProcess
https://bugs.webkit.org/show_bug.cgi?id=223059
Reviewed by Eric Carlson.
Align GPU process sandbox with WebProcess one, including additional camera related sandboxes.
Allow reading preferences for "com.apple.cmio"like done for coremedia.
- GPUProcess/GPUProcess.cpp:
(WebKit::GPUProcess::initializeGPUProcess):
- GPUProcess/GPUProcessCreationParameters.cpp:
(WebKit::GPUProcessCreationParameters::encode const):
(WebKit::GPUProcessCreationParameters::decode):
- GPUProcess/GPUProcessCreationParameters.h:
- GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in:
- UIProcess/GPU/GPUProcessProxy.cpp:
(WebKit::shouldCreateAppleCameraServiceSandboxExtension):
(WebKit::GPUProcessProxy::GPUProcessProxy):
- UIProcess/UserMediaProcessManager.cpp:
- WebProcess/com.apple.WebProcess.sb.in:
- 7:32 AM Changeset in webkit [274278] by
-
- 3 edits2 adds in trunk
Cleanup references to float and out-of-flow renderers before destroying them.
https://bugs.webkit.org/show_bug.cgi?id=223041
<rdar://72990740>
Reviewed by Antti Koivisto.
Source/WebCore:
This patch takes care of removing float/positioned references when the renderer gets destroyed during the cleanup phase.
(e.g. we initiate renderer (A) removal and it triggers collapsing other, anonymous renderers as well)
Test: fast/block/crash-when-anonymous-float-box-is-removed.html
- rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::destroyAndCleanUpAnonymousWrappers):
LayoutTests:
- fast/block/crash-when-anonymous-float-box-is-removed-expected.txt: Added.
- fast/block/crash-when-anonymous-float-box-is-removed.html: Added.
- 6:31 AM WebKitGTK/2.32.x edited by
- (diff)
- 6:31 AM WebKitGTK/2.32.x edited by
- (diff)
- 5:48 AM Changeset in webkit [274277] by
-
- 2 edits in trunk/Tools/buildstream
[Flatpak SDK] Update libsoup3
https://bugs.webkit.org/show_bug.cgi?id=223066
Patch by Philippe Normand <pnormand@igalia.com> on 2021-03-11
Reviewed by Carlos Garcia Campos.
- elements/sdk/libsoup3.bst: Bump to version 2.99.2.
- 4:41 AM Changeset in webkit [274276] by
-
- 2 edits in trunk/Tools
Fix contributors file canonical format issue.
Unreviewed.
- Scripts/webkitpy/common/config/contributors.json: Fix canonical format issue.
- 4:30 AM Changeset in webkit [274275] by
-
- 8 edits in trunk
Unreviewed. [GTK][WPE] Bump libsoup3 version to 2.99.3
.:
- Source/cmake/OptionsGTK.cmake:
- Source/cmake/OptionsWPE.cmake:
Source/WebCore:
Bring back support for logging body data.
- platform/network/soup/SoupNetworkSession.cpp:
(WebCore::SoupNetworkSession::setupLogger):
Source/WTF:
- wtf/Platform.h:
- wtf/URL.h:
- 3:48 AM Changeset in webkit [274274] by
-
- 3 edits1 delete in trunk
Unreviewed, reverting r274263.
https://bugs.webkit.org/show_bug.cgi?id=223064
Added few broken tests
Reverted changeset:
"AI validator patchpoint should read heap top"
https://bugs.webkit.org/show_bug.cgi?id=223052
https://trac.webkit.org/changeset/274263
- 2:57 AM Changeset in webkit [274273] by
-
- 14 edits1 add in trunk
[WPE][GTK] Add support for ICC color management
https://bugs.webkit.org/show_bug.cgi?id=177185
Reviewed by Adrian Perez de Castro.
.:
Add optional lcms2 dependency.
- Source/cmake/FindLCMS2.cmake: Added.
- Source/cmake/OptionsGTK.cmake:
- Source/cmake/OptionsWPE.cmake:
Source/WebCore:
Add support for ICC color profiles to JPEG and PNG decoders using lcms2 if available.
- PlatformGTK.cmake:
- PlatformWPE.cmake:
- platform/graphics/PlatformDisplay.cpp:
(WebCore::PlatformDisplay::~PlatformDisplay):
(WebCore::PlatformDisplay::colorProfile const):
- platform/graphics/PlatformDisplay.h:
- platform/graphics/x11/PlatformDisplayX11.cpp:
(WebCore::PlatformDisplayX11::colorProfile const):
- platform/graphics/x11/PlatformDisplayX11.h:
- platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
(WebCore::isICCMarker):
(WebCore::readICCProfile):
(WebCore::JPEGImageReader::JPEGImageReader):
(WebCore::JPEGImageReader::decode):
(WebCore::JPEGImageDecoder::~JPEGImageDecoder):
(WebCore::JPEGImageDecoder::clear):
(WebCore::JPEGImageDecoder::setFailed):
(WebCore::JPEGImageDecoder::outputScanlines):
(WebCore::JPEGImageDecoder::decode):
(WebCore::JPEGImageDecoder::setICCProfile):
- platform/image-decoders/jpeg/JPEGImageDecoder.h:
- platform/image-decoders/png/PNGImageDecoder.cpp:
(WebCore::PNGImageDecoder::~PNGImageDecoder):
(WebCore::PNGImageDecoder::clear):
(WebCore::PNGImageDecoder::setFailed):
(WebCore::PNGImageDecoder::headerAvailable):
(WebCore::PNGImageDecoder::rowAvailable):
(WebCore::PNGImageDecoder::decode):
(WebCore::PNGImageDecoder::frameComplete):
- platform/image-decoders/png/PNGImageDecoder.h:
- 2:07 AM Changeset in webkit [274272] by
-
- 2 edits in trunk/Tools
Add myself as committer to the contributors file.
Unreviewed.
- Scripts/webkitpy/common/config/contributors.json: Added myself as a committer.
- 1:10 AM Changeset in webkit [274271] by
-
- 2 edits in trunk/Source/WebCore
[ macOS debug arm64 ]fast/dom/Range/compareBoundaryPoints-compareHow-exception.html is a constant text failure
https://bugs.webkit.org/show_bug.cgi?id=223050
<rdar://problem/75284949>
Reviewed by Ryosuke Niwa.
Casting a negative double to an unsigned integer type is undefined behavior.
We need to make sure the double value is positive before casting.
No new tests, covered by existing test.
- bindings/js/JSDOMConvertNumbers.cpp:
(WebCore::toSmallerUInt):
- 1:09 AM Changeset in webkit [274270] by
-
- 9 edits in trunk
REGRESSION(r272469): [WPE][GTK] Epiphany UI process crashes when downloading PDFs, WebKitSecurityOrigin should use SecurityOriginData
https://bugs.webkit.org/show_bug.cgi?id=222943
Patch by Michael Catanzaro <Michael Catanzaro> on 2021-03-11
Reviewed by Alex Christensen.
Source/WebKit:
Since r272469, WebCore::SecurityOrigin no longer accepts custom protocols except those
registered with LegacySchemeRegistry. WebPage registers all custom protocols, but
WebPageProxy does not, so WebCore::SecurityOrigin now only supports custom protocols in the
web process, not the UI process. This causes Epiphany to crash when the protocol of its
WebKitSecurityOrigin is unexpectedly NULL.
Alex wants to reduce usage of WebCore::SecurityOrigin outside the web process, so instead of
registering custom protocols with LegacySchemeRegistry in the UI process -- making it harder
to eventually get rid of LegacySchemeRegistry -- we will transition WebKitSecurityOrigin
from WebCore::SecurityOrigin to WebCore::SecurityOriginData, which is a simple data store
for <protocol, host, port>. This is mostly sufficient to implement WebKitSecurityOrigin,
except for webkit_security_origin_is_opaque(). I considered multiple ways to handle this,
but ultimately decided to just deprecate it. Epiphany is the only client using this function
in order to implement a WebKitSecurityOrigin equality operation, and it does so using
origins that should never be opaque, so there are no compatibility concerns here.
- UIProcess/API/glib/WebKitAuthenticationRequest.cpp:
(webkit_authentication_request_get_security_origin):
- UIProcess/API/glib/WebKitSecurityOrigin.cpp:
(_WebKitSecurityOrigin::_WebKitSecurityOrigin):
(webkitSecurityOriginCreate):
(webkitSecurityOriginGetSecurityOriginData):
(webkit_security_origin_new):
(webkit_security_origin_new_for_uri):
(webkit_security_origin_get_protocol):
(webkit_security_origin_get_host):
(webkit_security_origin_get_port):
(webkit_security_origin_is_opaque):
(webkit_security_origin_to_string):
(webkitSecurityOriginGetSecurityOrigin): Deleted.
- UIProcess/API/glib/WebKitSecurityOriginPrivate.h:
- UIProcess/API/glib/WebKitWebContext.cpp:
(addOriginToMap):
- UIProcess/API/gtk/WebKitSecurityOrigin.h:
- UIProcess/API/wpe/WebKitSecurityOrigin.h:
Tools:
Add a test to ensure security origins can be successfully created for custom protocols.
Also, update the tests to accomodate the deprecation of webkit_security_origin_is_opaque().
Notably, origins for data:// URIs are no longer special.
- TestWebKitAPI/Tests/WebKitGLib/TestWebKitSecurityOrigin.cpp:
(testSecurityOriginBasicConstructor):
(testSecurityOriginURIConstructor):
(testSecurityOriginDefaultPort):
(testSecurityOriginFileURI):
(testSecurityOriginDataURI):
(testCustomProtocolOrigin):
(beforeAll):
(testOpaqueSecurityOrigin): Deleted.
- 12:41 AM Changeset in webkit [274269] by
-
- 8 edits2 adds in trunk
Indexed DB transactions outdated immediately after it just created
https://bugs.webkit.org/show_bug.cgi?id=216769
<rdar://problem/69321075>
Reviewed by Ryosuke Niwa.
Source/WebCore:
Test: storage/indexeddb/transaction-state-active-after-creation.html
Set transaction inactive in microtask checkpoint according to spec:
https://html.spec.whatwg.org/#perform-a-microtask-checkpoint
- Modules/indexeddb/IDBTransaction.cpp:
(WebCore::IDBTransaction::IDBTransaction):
- dom/EventLoop.cpp:
(WebCore::EventLoopTaskGroup::runAtEndOfMicrotaskCheckpoint):
- dom/EventLoop.h:
- dom/Microtasks.cpp:
(WebCore::MicrotaskQueue::performMicrotaskCheckpoint):
(WebCore::MicrotaskQueue::addCheckpointTask):
- dom/Microtasks.h:
- dom/TaskSource.h:
LayoutTests:
- storage/indexeddb/transaction-state-active-after-creation-expected.txt: Added.
- storage/indexeddb/transaction-state-active-after-creation.html: Added.
Mar 10, 2021:
- 11:28 PM Changeset in webkit [274268] by
-
- 4 edits in trunk/Source/WebInspectorUI
Web Inspector: Add checkbox to toggle all grid overlays
https://bugs.webkit.org/show_bug.cgi?id=221924
<rdar://problem/74365101>
Reviewed by BJ Burg.
- UserInterface/Controllers/OverlayManager.js:
Drive-by: remove unused getter.
- UserInterface/Views/CSSGridSection.css:
(.css-grid-section .toggle-all):
- UserInterface/Views/CSSGridSection.js:
(WI.CSSGridSection):
(WI.CSSGridSection.prototype.initialLayout):
(WI.CSSGridSection.prototype._handleToggleAllCheckboxChanged):
(WI.CSSGridSection.prototype.layout):
Drive-by: replaceArray.prototype.includes, which runs at O(n) time, withisGridOverlayVisible,
which checks a Map instead.
(WI.CSSGridSection.prototype._handleGridOverlayStateChanged):
(WI.CSSGridSection.prototype._updateToggleAllCheckbox):
Optimization: minimize number of Map lookups when when at least one overlay is visible and at least one is hidden.
- 9:59 PM Changeset in webkit [274267] by
-
- 5 edits in trunk
Fix intrinsic-size-005.html
https://bugs.webkit.org/show_bug.cgi?id=222970
Patch by Rob Buis <rbuis@igalia.com> on 2021-03-10
Reviewed by Simon Fraser.
Source/WebCore:
In orthogonal flow case with aspect-ratio in effect, compute logical height
from logical width provided the logical width is a fixed length.
- rendering/RenderBlock.cpp:
(WebCore::RenderBlock::computeChildPreferredLogicalWidths const):
- rendering/RenderBox.h:
LayoutTests:
Enable test that passes now.
- 7:48 PM Changeset in webkit [274266] by
-
- 2 edits in branches/safari-611.1.21.1-branch/Source/WebKit
Cherry-pick r274231. rdar://problem/75290553
[iOS] Add additional telemetry to WebContent sandbox
https://bugs.webkit.org/show_bug.cgi?id=223035
<rdar://75275161>
Reviewed by Geoffrey Garen.
Add additional telemetry to WebContent sandbox on iOS.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@274231 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 7:24 PM Changeset in webkit [274265] by
-
- 8 edits in branches/safari-611.1.21.1-branch/Source
Versioning.
WebKit-7611.1.21.1.9
- 6:40 PM Changeset in webkit [274264] by
-
- 17 edits in trunk
[GPU Process] Assertion under RenderLayerCompositor::computeCompositingRequirements()
https://bugs.webkit.org/show_bug.cgi?id=220375
Reviewed by Eric Carlson.
Source/WebCore:
MediaPlayercallsHTMLMediaElement::mediaEngineWasUpdated()when a media element
loads a new URL andMediaPlayer::supportsAcceleratedRendering()may change from
false to true at the same time. However,HTMLMediaElement::mediaEngineWasUpdated()
does not notify the renderer about the change in the same run loop. Instead, it
schedules a task to do that. This leads to a race condition that
RenderLayerBacking::contentChanged(VideoChanged)gets called after the compositing
update whereRenderLayerCompositor::canAccelerateVideoRendering()returns true.
This happens because renderer checksMediaPlayer::supportsAcceleratedRendering()
inRenderLayerCompositor::canAccelerateVideoRendering(), which changes its value
whenMediaPlayercallsHTMLMediaElement::mediaEngineWasUpdated().
To fix this race condition,
HTMLMediaElementneeds to notifyRenderVideoand
changes thesupportsAcceleratedRenderingproperty seen from renderer's perspective
in the same run loop. With this patch,HTMLMediaElementkeeps a cached value of
MediaPlayer::supportsAcceleratedRendering(), and only updates its value when
HTMLMediaElementnotifies the renderer. In addition,RenderVideochecks
HTMLMediaElement::supportsAcceleratedRendering()instead of
MediaPlayer::supportsAcceleratedRendering(), so that the renderer will
see the new value ofsupportsAcceleratedRenderingand receive the content
change notification in the same run loop.
No new tests. Fix assertion failures in tests.
- html/HTMLMediaElement.cpp:
(WebCore::HTMLMediaElement::mediaEngineWasUpdated):
(WebCore::HTMLMediaElement::clearMediaPlayer):
- html/HTMLMediaElement.h:
(WebCore::HTMLMediaElement::supportsAcceleratedRendering const):
- rendering/RenderVideo.cpp:
(WebCore::RenderVideo::paintReplaced):
(WebCore::RenderVideo::supportsAcceleratedRendering const):
Source/WebKit:
When "GPU Process: Media" is enabled,
MediaPlayerwill callmediaPlayerEngineUpdated()
three times when a media element tries to load a URL. The three calls happen at the
following time points:
1)MediaPlayercreates aMediaPlayerPrivateRemote.
2)MediaPlayerPrivateRemotereceives the response of a "createMediaPlayer" message
from the GPU process and gets the initial configurations of the "remote" media player.
3) TheRemoteMediaPlayerProxycreates aMediaPlayerPrivatein the GPU process and
notify theMediaPlayerPrivateRemotein the WebContent process.
The second call of
mediaPlayerEngineUpdated()is unnecessary because the player's
configuration at that time is similar toNullMediaPlayerPrivate. This patch removes it.
For the third call of
mediaPlayerEngineUpdated(), we have to make sure that
theMediaPlayerPrivateRemotehas received the configuration update from the GPU
process before the call. Therefore, this patch removes the message
MediaPlayerPrivateRemote::EngineUpdated, and letMediaPlayerPrivateRemote
decide when to callmediaPlayerEngineUpdated().
- GPUProcess/media/RemoteMediaPlayerManagerProxy.cpp:
(WebKit::RemoteMediaPlayerManagerProxy::createMediaPlayer):
- GPUProcess/media/RemoteMediaPlayerManagerProxy.h:
- GPUProcess/media/RemoteMediaPlayerManagerProxy.messages.in:
The
playerConfigurationis meaningless in this step so we can remove it.
- GPUProcess/media/RemoteMediaPlayerProxy.cpp:
(WebKit::RemoteMediaPlayerProxy::mediaPlayerEngineUpdated): Deleted.
- GPUProcess/media/RemoteMediaPlayerProxy.h:
- GPUProcess/media/cocoa/RemoteMediaPlayerProxyCocoa.mm:
(WebKit::RemoteMediaPlayerProxy::prepareForPlayback):
- WebProcess/GPU/media/MediaPlayerPrivateRemote.cpp:
(WebKit::MediaPlayerPrivateRemote::MediaPlayerPrivateRemote):
(WebKit::MediaPlayerPrivateRemote::load):
(WebKit::MediaPlayerPrivateRemote::setConfiguration): Deleted.
(WebKit::MediaPlayerPrivateRemote::engineUpdated): Deleted.
- WebProcess/GPU/media/MediaPlayerPrivateRemote.h:
- WebProcess/GPU/media/MediaPlayerPrivateRemote.messages.in:
- WebProcess/GPU/media/RemoteMediaPlayerManager.cpp:
(WebKit::RemoteMediaPlayerManager::createRemoteMediaPlayer):
LayoutTests:
- platform/wk2/TestExpectations:
- 6:39 PM Changeset in webkit [274263] by
-
- 3 edits1 add in trunk
AI validator patchpoint should read heap top
https://bugs.webkit.org/show_bug.cgi?id=223052
<rdar://75087095>
Reviewed by Saam Barati.
JSTests:
- stress/private-methods-inheritance.js: Added.
(A):
(A.prototype.x):
(B.prototype.y):
(B):
Source/JavaScriptCore:
Currently, the patchpoint doesn't specify any reads, which allows it to be moved around by B3
and can cause false positives since it at least read the structure ID for comparing values.
- ftl/FTLLowerDFGToB3.cpp:
(JSC::FTL::DFG::LowerDFGToB3::validateAIState):
- 6:17 PM Changeset in webkit [274262] by
-
- 1 copy in tags/Safari-611.1.21.0.6
Tag Safari-611.1.21.0.6.
- 6:16 PM Changeset in webkit [274261] by
-
- 1 copy in tags/Safari-611.1.21.2.2
Tag Safari-611.1.21.2.2.
- 6:14 PM Changeset in webkit [274260] by
-
- 1 copy in tags/Safari-611.1.21.1.8
Tag Safari-611.1.21.1.8.
- 6:11 PM Changeset in webkit [274259] by
-
- 2 edits in trunk/Source/WebKitLegacy/win
Unreviewed Window build fix after r274252.
- WebKitQuartzCoreAdditions/CAD3DRenderer.cpp:
- 6:01 PM Changeset in webkit [274258] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, another Windows build fix after r274252.
- platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
(WebCore::AVFWrapper::dispatchQueue const):
(WebCore::AVFWrapper::AVFWrapper):
(WebCore::AVFWrapper::~AVFWrapper):
(WebCore::AVFWrapper::createAssetForURL):
(WebCore::AVFWrapper::createPlayer):
(WebCore::AVFWrapper::createPlayerItem):
(WebCore::AVFWrapper::createAVCFVideoLayer):
- 5:51 PM Changeset in webkit [274257] by
-
- 3 edits in trunk/Source/WebCore
Unreviewed, another Windows build fix after r274252.
- platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
(WebCore::AVFWrapper::createPlayerItem):
- platform/network/cf/LoaderRunLoopCF.cpp:
- 5:44 PM Changeset in webkit [274256] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed attempt to fix Windows build after r274252.
- platform/graphics/cg/ColorSpaceCG.cpp:
- 5:36 PM Changeset in webkit [274255] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed attempt to fix Windows build after r274252.
- platform/graphics/cg/ColorSpaceCG.cpp:
- 5:26 PM Changeset in webkit [274254] by
-
- 2 edits in branches/safari-611.1.21.2-branch/Source/WebKit
Cherry-pick r274231. rdar://problem/75291920
[iOS] Add additional telemetry to WebContent sandbox
https://bugs.webkit.org/show_bug.cgi?id=223035
<rdar://75275161>
Reviewed by Geoffrey Garen.
Add additional telemetry to WebContent sandbox on iOS.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@274231 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 5:25 PM Changeset in webkit [274253] by
-
- 8 edits in branches/safari-611.1.21.2-branch/Source
Versioning.
WebKit-7611.1.21.2.2
- 5:08 PM Changeset in webkit [274252] by
-
- 95 edits in trunk
Use RetainPtr<> / OSObjectPtr<> more in WebKit
https://bugs.webkit.org/show_bug.cgi?id=223030
Reviewed by Darin Adler.
Source/JavaScriptCore:
- inspector/remote/cocoa/RemoteInspectorCocoa.mm:
(Inspector::RemoteInspector::setupXPCConnectionIfNeeded):
- inspector/remote/cocoa/RemoteInspectorXPCConnection.h:
- inspector/remote/cocoa/RemoteInspectorXPCConnection.mm:
(Inspector::RemoteInspectorXPCConnection::RemoteInspectorXPCConnection):
(Inspector::RemoteInspectorXPCConnection::closeFromMessage):
(Inspector::RemoteInspectorXPCConnection::closeOnQueue):
(Inspector::RemoteInspectorXPCConnection::handleEvent):
(Inspector::RemoteInspectorXPCConnection::sendMessage):
- jsc.cpp:
(jscmain):
Source/WebCore:
- bridge/objc/objc_class.mm:
(JSC::Bindings::classesByIsA):
(JSC::Bindings::_createClassesByIsAIfNecessary):
(JSC::Bindings::ObjcClass::classForIsA):
- editing/SmartReplaceCF.cpp:
(WebCore::getSmartSet):
- page/cocoa/ResourceUsageOverlayCocoa.mm:
(WebCore::createColor):
(WebCore::ResourceUsageOverlay::platformInitialize):
(WebCore::drawGraphLabel):
(WebCore::drawCpuHistory):
(WebCore::drawGCHistory):
(WebCore::ResourceUsageOverlay::platformDraw):
- platform/cf/win/CertificateCFWin.cpp:
(WebCore::createCertContextDeallocator):
(WebCore::copyCertificateToData):
- platform/graphics/FontPlatformData.h:
- platform/graphics/Pattern.h:
- platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
(WebCore::AVFWrapper::dispatchQueue const):
(WebCore::createMetadataKeyNames):
(WebCore::metadataKeyNames):
(WebCore::AVFWrapper::AVFWrapper):
(WebCore::AVFWrapper::~AVFWrapper):
(WebCore::AVFWrapper::createAssetForURL):
(WebCore::AVFWrapper::createPlayer):
(WebCore::AVFWrapper::createPlayerItem):
(WebCore::AVFWrapper::checkPlayability):
(WebCore::AVFWrapper::createAVCFVideoLayer):
- platform/graphics/cg/ColorCG.cpp:
(WTF::RetainPtr<CGColorRef>>::createValueForKey):
(WebCore::createCGColor):
(WebCore::cachedCGColor):
- platform/graphics/cg/ColorSpaceCG.cpp:
(WebCore::namedColorSpace):
- platform/graphics/cg/GraphicsContextCG.cpp:
(WebCore::GraphicsContext::applyStrokePattern):
(WebCore::GraphicsContext::applyFillPattern):
- platform/graphics/cg/GraphicsContextPlatformPrivateCG.h:
(WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
- platform/graphics/cg/PathCG.cpp:
(WebCore::createScratchContext):
(WebCore::scratchContext):
(WebCore::copyCGPathClosingSubpaths):
(WebCore::Path::contains const):
- platform/graphics/cg/PatternCG.cpp:
(WebCore::Pattern::createPlatformPattern const):
- platform/graphics/coretext/FontPlatformDataCoreText.cpp:
(WebCore::FontPlatformData::FontPlatformData):
- platform/graphics/cv/ImageTransferSessionVT.mm:
(WebCore::ImageTransferSessionVT::createPixelBuffer):
- platform/graphics/mac/ComplexTextControllerCoreText.mm:
(WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
- platform/graphics/mac/SimpleFontDataCoreText.cpp:
(WebCore::Font::getCFStringAttributes const):
- platform/graphics/win/GraphicsContextCGWin.cpp:
(WebCore::CGContextWithHDC):
- platform/ios/Device.cpp:
(WebCore::deviceName):
- platform/ios/DragImageIOS.mm:
(WebCore::cascadeForSystemFont):
- platform/ios/wak/WebCoreThread.mm:
(webThreadReleaseSource):
(webThreadReleaseObjArray):
(delegateSource):
(mainRunLoopAutoUnlockObserver):
(SendDelegateMessage):
(WebThreadAdoptAndRelease):
(HandleWebThreadReleaseSource):
(MainRunLoopAutoUnlock):
(_WebThreadAutoLock):
(_WebRunLoopEnableNestedFromMainThread):
(_WebRunLoopDisableNestedFromMainThread):
(RunWebThread):
(StartWebThread):
- platform/ios/wak/WebCoreThreadRun.cpp:
- platform/mac/PowerObserverMac.cpp:
(WebCore::PowerObserver::PowerObserver):
(WebCore::PowerObserver::~PowerObserver):
- platform/mac/PowerObserverMac.h:
- platform/mediarecorder/cocoa/AudioSampleBufferCompressor.h:
- platform/mediarecorder/cocoa/AudioSampleBufferCompressor.mm:
(WebCore::AudioSampleBufferCompressor::AudioSampleBufferCompressor):
(WebCore::AudioSampleBufferCompressor::~AudioSampleBufferCompressor):
(WebCore::AudioSampleBufferCompressor::finish):
(WebCore::AudioSampleBufferCompressor::addSampleBuffer):
- platform/mediarecorder/cocoa/VideoSampleBufferCompressor.h:
- platform/mediarecorder/cocoa/VideoSampleBufferCompressor.mm:
(WebCore::VideoSampleBufferCompressor::VideoSampleBufferCompressor):
(WebCore::VideoSampleBufferCompressor::~VideoSampleBufferCompressor):
(WebCore::VideoSampleBufferCompressor::finish):
(WebCore::VideoSampleBufferCompressor::addSampleBuffer):
- platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.h:
- platform/mediastream/ios/AVAudioSessionCaptureDeviceManager.mm:
(WebCore::AVAudioSessionCaptureDeviceManager::AVAudioSessionCaptureDeviceManager):
(WebCore::AVAudioSessionCaptureDeviceManager::~AVAudioSessionCaptureDeviceManager):
(WebCore::AVAudioSessionCaptureDeviceManager::refreshAudioCaptureDevices):
(WebCore::AVAudioSessionCaptureDeviceManager::getCaptureDevices):
(WebCore::AVAudioSessionCaptureDeviceManager::disableAllDevicesQuery):
- platform/network/NetworkStorageSession.h:
- platform/network/cf/AuthenticationCF.cpp:
(WebCore::createCF):
- platform/network/cf/AuthenticationCF.h:
- platform/network/cf/CertificateInfoCFNet.cpp:
(WebCore::CertificateInfo::certificateChainFromSecTrust):
- platform/network/cf/CredentialStorageCFNet.cpp:
(WebCore::copyCredentialFromProtectionSpace):
(WebCore::CredentialStorage::getFromPersistentStorage):
- platform/network/cf/LoaderRunLoopCF.cpp:
(WebCore::loaderRunLoop):
- platform/network/cf/NetworkStorageSessionCFNetWin.cpp:
(WebCore::createPrivateStorageSession):
- platform/network/cf/ProtectionSpaceCFNet.cpp:
(WebCore::ProtectionSpace::receivesCredentialSecurely const):
- platform/network/cf/ResourceHandleCFNet.cpp:
(WebCore::ResourceHandle::tryHandlePasswordBasedAuthentication):
(WebCore::ResourceHandle::receivedCredential):
(WebCore::ResourceHandle::platformLoadResourceSynchronously):
- platform/network/cf/ResourceHandleCFURLConnectionDelegateWithOperationQueue.cpp:
(WebCore::getRunLoop):
- platform/network/cf/ResourceRequestCFNet.cpp:
(WebCore::siteForCookies):
(WebCore::ResourceRequest::doUpdatePlatformRequest):
(WebCore::ResourceRequest::doUpdatePlatformHTTPBody):
(WebCore::ResourceRequest::setStorageSession):
- platform/network/cocoa/NetworkStorageSessionCocoa.mm:
(WebCore::createPrivateStorageSession):
- platform/network/ios/WebCoreURLResponseIOS.mm:
(WebCore::createExtensionToMIMETypeMap):
(WebCore::adjustMIMETypeIfNecessary):
- platform/network/mac/WebCoreURLResponse.mm:
(WebCore::createExtensionToMIMETypeMap):
(WebCore::adjustMIMETypeIfNecessary):
- platform/text/mac/TextBoundaries.mm:
(WebCore::tokenizerForString):
- platform/win/DragImageCGWin.cpp:
(WebCore::allocImage):
- rendering/RenderThemeIOS.mm:
(WebCore::getSharedFunctionRef):
- testing/cocoa/WebArchiveDumpSupport.mm:
(WebCoreTestSupport::createCFURLResponseFromResponseData):
(WebCoreTestSupport::convertWebResourceResponseToDictionary):
Source/WebKit:
- NetworkProcess/NetworkProcess.cpp:
(WebKit::NetworkProcess::newTestingSession):
(WebKit::NetworkProcess::ensureSession):
- NetworkProcess/NetworkProcess.h:
- NetworkProcess/cocoa/NetworkProcessCocoa.mm:
(WebKit::NetworkProcess::clearDiskCache):
- NetworkProcess/mac/NetworkProcessMac.mm:
(WebKit::NetworkProcess::platformTerminate):
- Platform/IPC/Connection.h:
- Platform/IPC/cocoa/ConnectionCocoa.mm:
(IPC::Connection::platformInvalidate):
(IPC::Connection::cancelReceiveSource):
(IPC::Connection::open):
(IPC::Connection::initializeSendSource):
(IPC::Connection::receiveSourceEventHandler):
- Shared/Cocoa/DefaultWebBrowserChecks.mm:
(WebKit::itpQueue):
(WebKit::determineITPState):
(WebKit::doesAppHaveITPEnabled):
- Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm:
(WebKit::XPCServiceEventHandler):
- Shared/ShareableResource.cpp:
(WebKit::createShareableResourceDeallocator):
(WebKit::ShareableResource::wrapInSharedBuffer):
- Shared/cf/ArgumentCodersCF.cpp:
(IPC::decode):
- UIProcess/mac/LegacySessionStateCoding.cpp:
(WebKit::encodeSessionHistoryEntryData):
- WebProcess/WebPage/Cocoa/WebCookieCacheCocoa.mm:
(WebKit::WebCookieCache::inMemoryStorageSession):
- WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.h:
- WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.mm:
(WebKit::RemoteLayerTreeDrawingArea::RemoteLayerTreeDrawingArea):
(WebKit::RemoteLayerTreeDrawingArea::updateRendering):
Source/WebKitLegacy:
223030_RetainPtr
- WebCoreSupport/NetworkStorageSessionMap.cpp:
(NetworkStorageSessionMap::switchToNewTestingSession):
(NetworkStorageSessionMap::ensureSession):
Source/WebKitLegacy/ios:
- WebView/WebPDFViewIOS.mm:
(createCGColorWithDeviceWhite):
(+[WebPDFView shadowColor]):
(+[WebPDFView backgroundColor]):
Source/WebKitLegacy/mac:
- Misc/WebElementDictionary.mm:
(lookupTable):
(addLookupKey):
(+[WebElementDictionary initializeLookupTable]):
(-[WebElementDictionary _fillCache]):
(-[WebElementDictionary objectForKey:]):
- WebView/WebView.mm:
(+[WebView _makeAllWebViewsPerformSelector:]):
(-[WebView _removeFromAllWebViewsSet]):
(-[WebView _addToAllWebViewsSet]):
(+[WebView closeAllWebViews]):
(+[WebView _maxCacheModelInAnyInstance]):
Source/WebKitLegacy/win:
- WebApplicationCache.cpp:
(WebApplicationCache::originsWithCache):
- WebDownloadCFNet.cpp:
(WebDownload::useCredential):
(WebDownload::didReceiveAuthenticationChallenge):
- WebKitQuartzCoreAdditions/CAD3DRenderer.cpp:
(WKQCA::updateBounds):
- WebLocalizableStrings.cpp:
(LocalizedString::LocalizedString):
(LocalizedString::operator CFStringRef const):
(LocalizedString::operator LPCTSTR const):
(copyLocalizedStringFromBundle):
- WebPreferences.cpp:
(defaultSettings):
(WebPreferences::initializeDefaultSettings):
(WebPreferences::valueForKey):
(WebPreferences::copyWebKitPreferencesToCFPreferences):
Source/WTF:
- wtf/MemoryPressureHandler.cpp:
(WTF::MemoryPressureHandler::setDispatchQueue):
- wtf/MemoryPressureHandler.h:
- wtf/WorkQueue.h:
- wtf/cocoa/MemoryPressureHandlerCocoa.mm:
(WTF::MemoryPressureHandler::install):
(WTF::MemoryPressureHandler::uninstall):
(WTF::MemoryPressureHandler::holdOff):
- wtf/cocoa/WorkQueueCocoa.cpp:
(WTF::WorkQueue::dispatch):
(WTF::WorkQueue::dispatchAfter):
(WTF::WorkQueue::platformInitialize):
(WTF::WorkQueue::platformInvalidate):
- wtf/text/cf/StringImplCF.cpp:
(WTF::StringWrapperCFAllocator::allocator):
(WTF::StringImpl::createCFString):
Tools:
- DumpRenderTree/cg/PixelDumpSupportCG.cpp:
(createBitmapContext):
- DumpRenderTree/cg/PixelDumpSupportCG.h:
(BitmapContext::createByAdoptingBitmapAndContext):
(BitmapContext::BitmapContext):
- DumpRenderTree/mac/DumpRenderTree.mm:
(WebThreadLockAfterDelegateCallbacksHaveCompleted):
- DumpRenderTree/win/PixelDumpSupportWin.cpp:
(createBitmapContextFromWebView):
- ImageDiff/ImageDiff.xcodeproj/project.pbxproj:
- ImageDiff/cg/PlatformImageCG.cpp:
(ImageDiff::PlatformImage::pixels const):
- WebKitTestRunner/cg/TestInvocationCG.cpp:
(WTR::createCGContextFromCGImage):
(WTR::createCGContextFromImage):
(WTR::TestInvocation::dumpPixelsAndCompareWithExpected):
- 4:33 PM Changeset in webkit [274251] by
-
- 5 edits in trunk/Tools
[git-webkit] Make identifier last string in 'find'
https://bugs.webkit.org/show_bug.cgi?id=223031
<rdar://problem/75272100>
Reviewed by Ryosuke Niwa.
- Scripts/libraries/webkitscmpy/setup.py: Bump version.
- Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
- Scripts/libraries/webkitscmpy/webkitscmpy/program/find.py:
(Info.main):
- Scripts/libraries/webkitscmpy/webkitscmpy/test/find_unittest.py:
- 4:11 PM Changeset in webkit [274250] by
-
- 1 delete in tags/Safari-612.1.5.4
Delete tag.
- 4:05 PM Changeset in webkit [274249] by
-
- 25 edits in trunk/Source
Add plumbing for
defaultPlaybackRateto AVKit
https://bugs.webkit.org/show_bug.cgi?id=222991
<rdar://problem/75012417>
Reviewed by Eric Carlson.
Source/WebCore:
- platform/cocoa/PlaybackSessionModel.h:
(WebCore::PlaybackSessionModelClient::rateChanged):
- platform/cocoa/PlaybackSessionModelMediaElement.h:
- platform/cocoa/PlaybackSessionModelMediaElement.mm:
(WebCore::PlaybackSessionModelMediaElement::updateForEventName):
(WebCore::PlaybackSessionModelMediaElement::setDefaultPlaybackRate): Added.
(WebCore::PlaybackSessionModelMediaElement::defaultPlaybackRate const): Added.
(WebCore::PlaybackSessionModelMediaElement::playbackRate const):
- platform/ios/PlaybackSessionInterfaceAVKit.h:
- platform/ios/PlaybackSessionInterfaceAVKit.mm:
(WebCore::PlaybackSessionInterfaceAVKit::PlaybackSessionInterfaceAVKit):
(WebCore::PlaybackSessionInterfaceAVKit::rateChanged):
- platform/ios/WebVideoFullscreenControllerAVKit.mm:
(VideoFullscreenControllerContext::rateChanged):
(VideoFullscreenControllerContext::setDefaultPlaybackRate): Added.
(VideoFullscreenControllerContext::defaultPlaybackRate const): Added.
- platform/ios/WebAVPlayerController.h:
- platform/ios/WebAVPlayerController.mm:
(-[WebAVPlayerController init]):
(-[WebAVPlayerController dealloc]):
(-[WebAVPlayerController observeValueForKeyPath:ofObject:change:context:]):
- platform/mac/PlaybackSessionInterfaceMac.h:
- platform/mac/PlaybackSessionInterfaceMac.mm:
(WebCore::PlaybackSessionInterfaceMac::rateChanged):
(WebCore::PlaybackSessionInterfaceMac::setPlayBackControlsManager):
- platform/mac/VideoFullscreenInterfaceMac.h:
- platform/mac/VideoFullscreenInterfaceMac.mm:
(WebCore::VideoFullscreenInterfaceMac::rateChanged):
- platform/mac/WebPlaybackControlsManager.h:
- platform/mac/WebPlaybackControlsManager.mm:
Source/WebCore/PAL:
- pal/spi/cocoa/AVKitSPI.h:
Source/WebKit:
- WebProcess/cocoa/PlaybackSessionManager.messages.in:
- WebProcess/cocoa/PlaybackSessionManager.h:
- WebProcess/cocoa/PlaybackSessionManager.mm:
(WebKit::PlaybackSessionInterfaceContext::rateChanged):
(WebKit::PlaybackSessionManager::rateChanged):
(WebKit::PlaybackSessionManager::setDefaultPlaybackRate): Added.
- UIProcess/Cocoa/PlaybackSessionManagerProxy.messages.in:
- UIProcess/Cocoa/PlaybackSessionManagerProxy.h:
- UIProcess/Cocoa/PlaybackSessionManagerProxy.mm:
(WebKit::PlaybackSessionModelContext::setDefaultPlaybackRate): Added.
(WebKit::PlaybackSessionModelContext::rateChanged):
(WebKit::PlaybackSessionManagerProxy::rateChanged):
(WebKit::PlaybackSessionManagerProxy::setDefaultPlaybackRate): Added.
- UIProcess/ios/fullscreen/WKFullScreenViewController.mm:
(WKFullScreenViewControllerPlaybackSessionModelClient::rateChanged):
- 4:01 PM Changeset in webkit [274248] by
-
- 8 edits in trunk/Tools
[resultsdbpy] Make client aware of hashes and revisions
https://bugs.webkit.org/show_bug.cgi?id=223001
<rdar://problem/75237812>
Reviewed by Dewei Zhu.
- Scripts/libraries/resultsdbpy/resultsdbpy/init.py: Bump version.
- Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/commit.js:
(Commit): Support both "id" and "identifier" in constructor.
(Commit.prototype.repr): Centralize string representation of commit.
(_CommitBank.prototype._loadSiblings):
- Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/investigate.js:
(commitsForUuid): Use repr().
- Scripts/libraries/resultsdbpy/resultsdbpy/view/static/js/timeline.js:
(xAxisFromScale): Use repr().
(TimelineFromEndpoint.prototype.render.onDotEnterFactory): Ditto.
- Scripts/libraries/resultsdbpy/resultsdbpy/view/templates/commits.html: Convert JSON to Commit object.
- Scripts/libraries/resultsdbpy/resultsdbpy/view/templates/investigate.html: Use repr().
- Scripts/libraries/resultsdbpy/setup.py: Bump version.
- 4:00 PM Changeset in webkit [274247] by
-
- 2 edits in trunk/Source/WebKit
[iOS] Adjust telemetry rule
https://bugs.webkit.org/show_bug.cgi?id=223045
Reviewed by Geoffrey Garen.
Adjust socket-option related telemetry rule on iOS.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- 3:56 PM WebKitGTK/2.32.x edited by
- (diff)
- 3:42 PM Changeset in webkit [274246] by
-
- 8 edits in branches/safari-611.1.21.0-branch/Source
Versioning.
WebKit-7611.1.21.0.6
- 3:38 PM Changeset in webkit [274245] by
-
- 9 edits in branches/safari-611.1.21.0-branch/Source/WebKit
Revert r271193. rdar://problem/75273221
- 3:33 PM Changeset in webkit [274244] by
-
- 237 edits122 adds122 deletes in trunk/LayoutTests
[LayoutTests] Convert http/tests/security convert PHP to Python
https://bugs.webkit.org/show_bug.cgi?id=222668
<rdar://problem/74993152>
Reviewed by Jonathan Bedard.
- TestExpectations:
- http/tests/fetch/redirectmode-and-preload-expected.txt:
- http/tests/fetch/redirectmode-and-preload.html:
- http/tests/local/file-url-sent-as-referer.html:
- http/tests/security/basic-auth-subresource-expected.txt:
- http/tests/security/basic-auth-subresource.html:
- http/tests/security/cached-cross-origin-preloaded-css-stylesheet-expected.txt:
- http/tests/security/cached-cross-origin-preloaded-css-stylesheet.html:
- http/tests/security/cached-cross-origin-preloading-css-stylesheet-expected.txt:
- http/tests/security/cached-cross-origin-preloading-css-stylesheet.html:
- http/tests/security/cached-cross-origin-shared-css-stylesheet.html:
- http/tests/security/cannot-read-cssrules-redirect.html:
- http/tests/security/cannot-read-cssrules.html:
- http/tests/security/canvas-remote-read-remote-image-allowed-with-credentials.html:
- http/tests/security/canvas-remote-read-remote-image-allowed.html:
- http/tests/security/canvas-remote-read-remote-image-blocked-no-crossorigin.html:
- http/tests/security/canvas-remote-read-remote-image-blocked-then-allowed.html:
- http/tests/security/clean-origin-css-exposed-resource-timing.html:
- http/tests/security/contentSecurityPolicy/1.1/child-src/frame-redirect-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/child-src/worker-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/child-src/worker-redirect-blocked.html:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-in-enforced-policy-and-not-in-report-only.html:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-in-one-enforced-policy-neither-in-another-enforced-policy-nor-report-policy.html:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-redirect-same-origin.html:
- http/tests/security/contentSecurityPolicy/1.1/module-scriptnonce-redirect.html:
- http/tests/security/contentSecurityPolicy/1.1/report-uri-effective-directive-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/report-uri-effective-directive.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/report-uri-effective-directive.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/resources/module-scriptnonce-in-enforced-policy-and-not-in-report-only.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/resources/module-scriptnonce-in-enforced-policy-and-not-in-report-only.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/resources/module-scriptnonce-in-one-enforced-policy-neither-in-another-enforced-policy-nor-report-policy.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/resources/module-scriptnonce-in-one-enforced-policy-neither-in-another-enforced-policy-nor-report-policy.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/resources/scripthash-in-enforced-policy-and-not-in-report-only.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/resources/scripthash-in-enforced-policy-and-not-in-report-only.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/resources/scripthash-in-one-enforced-policy-neither-in-another-enforced-policy-nor-report-policy.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/resources/scripthash-in-one-enforced-policy-neither-in-another-enforced-policy-nor-report-policy.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/resources/scriptnonce-in-enforced-policy-and-not-in-report-only.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/resources/scriptnonce-in-enforced-policy-and-not-in-report-only.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/resources/scriptnonce-in-one-enforced-policy-neither-in-another-enforced-policy-nor-report-policy.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/resources/scriptnonce-in-one-enforced-policy-neither-in-another-enforced-policy-nor-report-policy.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/script-blocked-sends-multiple-reports-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/script-blocked-sends-multiple-reports.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/script-blocked-sends-multiple-reports.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-enforced-policy-and-blocked-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-enforced-policy-and-blocked-by-report-policy.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-enforced-policy-and-blocked-by-report-policy.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-enforced-policy-and-blocked-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-enforced-policy-and-blocked-by-report-policy2.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-enforced-policy-and-blocked-by-report-policy2.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy2.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy2.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-enforced-policy-and-allowed-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-enforced-policy-and-allowed-by-report-policy.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-enforced-policy-and-allowed-by-report-policy.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-enforced-policy-and-allowed-by-report-policy2.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-enforced-policy-and-allowed-by-report-policy2.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy2.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy2.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scripthash-in-enforced-policy-and-not-in-report-only.html:
- http/tests/security/contentSecurityPolicy/1.1/scripthash-in-one-enforced-policy-neither-in-another-enforced-policy-nor-report-policy.html:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-by-enforced-policy-and-blocked-by-report-policy.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-by-enforced-policy-and-blocked-by-report-policy.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-by-enforced-policy-and-blocked-by-report-policy2.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-by-enforced-policy-and-blocked-by-report-policy2.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy2.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-allowed-by-legacy-enforced-policy-and-blocked-by-report-policy2.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-enforced-policy-and-allowed-by-report-policy-expected.txt:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-enforced-policy-and-allowed-by-report-policy.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-enforced-policy-and-allowed-by-report-policy.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-enforced-policy-and-allowed-by-report-policy2.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-enforced-policy-and-allowed-by-report-policy2.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy2.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-allowed-by-report-policy2.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2.php: Removed.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-blocked-by-legacy-enforced-policy-and-blocked-by-report-policy2.py: Added.
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-in-enforced-policy-and-not-in-report-only.html:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-in-one-enforced-policy-neither-in-another-enforced-policy-nor-report-policy.html:
- http/tests/security/contentSecurityPolicy/1.1/scriptnonce-redirect.html:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-iframe-report-only-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-css-in-iframe-report-only.html:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-with-enforced-and-report-policies-expected.txt:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-with-enforced-and-report-policies.html:
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/resources/frame-with-insecure-css-report-only.php: Removed.
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/resources/frame-with-insecure-css-report-only.py: Added.
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/resources/frame-with-insecure-image-with-enforced-and-report-policies.php: Removed.
- http/tests/security/contentSecurityPolicy/block-all-mixed-content/resources/frame-with-insecure-image-with-enforced-and-report-policies.py: Added.
- http/tests/security/contentSecurityPolicy/connect-src-eventsource-redirect-to-blocked.html:
- http/tests/security/contentSecurityPolicy/connect-src-xmlhttprequest-redirect-to-blocked.html:
- http/tests/security/contentSecurityPolicy/eval-allowed-in-report-only-mode-and-sends-report.php: Removed.
- http/tests/security/contentSecurityPolicy/eval-allowed-in-report-only-mode-and-sends-report.py: Added.
- http/tests/security/contentSecurityPolicy/eval-allowed-in-report-only-mode.php: Removed.
- http/tests/security/contentSecurityPolicy/eval-allowed-in-report-only-mode.py: Added.
- http/tests/security/contentSecurityPolicy/iframe-inside-csp.html:
- http/tests/security/contentSecurityPolicy/image-document-default-src-none.html:
- http/tests/security/contentSecurityPolicy/report-and-enforce-expected.txt:
- http/tests/security/contentSecurityPolicy/report-and-enforce.php: Removed.
- http/tests/security/contentSecurityPolicy/report-and-enforce.py: Added.
- http/tests/security/contentSecurityPolicy/report-blocked-data-uri-expected.txt:
- http/tests/security/contentSecurityPolicy/report-blocked-data-uri.php: Removed.
- http/tests/security/contentSecurityPolicy/report-blocked-data-uri.py: Added.
- http/tests/security/contentSecurityPolicy/report-blocked-file-uri-expected.txt:
- http/tests/security/contentSecurityPolicy/report-blocked-file-uri.php: Removed.
- http/tests/security/contentSecurityPolicy/report-blocked-file-uri.py: Added.
- http/tests/security/contentSecurityPolicy/report-blocked-uri-and-do-not-follow-redirect-when-sending-report-expected.txt:
- http/tests/security/contentSecurityPolicy/report-blocked-uri-and-do-not-follow-redirect-when-sending-report.php: Removed.
- http/tests/security/contentSecurityPolicy/report-blocked-uri-and-do-not-follow-redirect-when-sending-report.py: Added.
- http/tests/security/contentSecurityPolicy/report-blocked-uri-cross-origin-expected.txt:
- http/tests/security/contentSecurityPolicy/report-blocked-uri-cross-origin.php: Removed.
- http/tests/security/contentSecurityPolicy/report-blocked-uri-cross-origin.py: Added.
- http/tests/security/contentSecurityPolicy/report-blocked-uri-expected.txt:
- http/tests/security/contentSecurityPolicy/report-blocked-uri.php: Removed.
- http/tests/security/contentSecurityPolicy/report-blocked-uri.py: Added.
- http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-expected.txt:
- http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled-expected.txt:
- http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled.php: Removed.
- http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies-when-private-browsing-enabled.py: Added.
- http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies.php: Removed.
- http/tests/security/contentSecurityPolicy/report-cross-origin-no-cookies.py: Added.
- http/tests/security/contentSecurityPolicy/report-only-connect-src-beacon-redirect-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/report-only-connect-src-beacon-redirect-blocked.php:
- http/tests/security/contentSecurityPolicy/report-only-connect-src-xmlhttprequest-redirect-to-blocked-expected.txt:
- http/tests/security/contentSecurityPolicy/report-only-connect-src-xmlhttprequest-redirect-to-blocked.php:
- http/tests/security/contentSecurityPolicy/report-only-expected.txt:
- http/tests/security/contentSecurityPolicy/report-only-from-header-expected.txt:
- http/tests/security/contentSecurityPolicy/report-only-from-header.php: Removed.
- http/tests/security/contentSecurityPolicy/report-only-from-header.py: Added.
- http/tests/security/contentSecurityPolicy/report-only-report-uri-missing.php: Removed.
- http/tests/security/contentSecurityPolicy/report-only-report-uri-missing.py: Added.
- http/tests/security/contentSecurityPolicy/report-only-upgrade-insecure-expected.txt:
- http/tests/security/contentSecurityPolicy/report-only-upgrade-insecure.php: Removed.
- http/tests/security/contentSecurityPolicy/report-only-upgrade-insecure.py: Added.
- http/tests/security/contentSecurityPolicy/report-only.php: Removed.
- http/tests/security/contentSecurityPolicy/report-only.py: Added.
- http/tests/security/contentSecurityPolicy/report-same-origin-no-cookies-when-private-browsing-toggled-expected.txt:
- http/tests/security/contentSecurityPolicy/report-same-origin-no-cookies-when-private-browsing-toggled.php: Removed.
- http/tests/security/contentSecurityPolicy/report-same-origin-no-cookies-when-private-browsing-toggled.py: Added.
- http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-expected.txt:
- http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-when-private-browsing-enabled-expected.txt:
- http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-when-private-browsing-enabled.php: Removed.
- http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies-when-private-browsing-enabled.py: Added.
- http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies.php: Removed.
- http/tests/security/contentSecurityPolicy/report-same-origin-with-cookies.py: Added.
- http/tests/security/contentSecurityPolicy/report-uri-expected.txt:
- http/tests/security/contentSecurityPolicy/report-uri-from-inline-javascript-expected.txt:
- http/tests/security/contentSecurityPolicy/report-uri-from-inline-javascript.php: Removed.
- http/tests/security/contentSecurityPolicy/report-uri-from-inline-javascript.py: Added.
- http/tests/security/contentSecurityPolicy/report-uri-from-javascript-expected.txt:
- http/tests/security/contentSecurityPolicy/report-uri-from-javascript.php: Removed.
- http/tests/security/contentSecurityPolicy/report-uri-from-javascript.py: Added.
- http/tests/security/contentSecurityPolicy/report-uri-scheme-relative-expected.txt:
- http/tests/security/contentSecurityPolicy/report-uri-scheme-relative.php: Removed.
- http/tests/security/contentSecurityPolicy/report-uri-scheme-relative.py: Added.
- http/tests/security/contentSecurityPolicy/report-uri.php: Removed.
- http/tests/security/contentSecurityPolicy/report-uri.py: Added.
- http/tests/security/contentSecurityPolicy/resources/child-src-test.js:
(injectFrameRedirectingTo):
- http/tests/security/contentSecurityPolicy/resources/determine-content-security-policy-header.php: Removed.
- http/tests/security/contentSecurityPolicy/resources/generate-csp-report.php:
- http/tests/security/contentSecurityPolicy/resources/go-to-echo-report.php: Removed.
- http/tests/security/contentSecurityPolicy/resources/go-to-echo-report.py: Added.
- http/tests/security/contentSecurityPolicy/resources/image-document-default-src-none-iframe.php: Removed.
- http/tests/security/contentSecurityPolicy/resources/image-document-default-src-none-iframe.py: Added.
- http/tests/security/contentSecurityPolicy/resources/redir.py: Added.
- http/tests/security/contentSecurityPolicy/resources/sandbox.php: Removed.
- http/tests/security/contentSecurityPolicy/resources/sandbox.py: Added.
- http/tests/security/contentSecurityPolicy/resources/sandboxed-eval.php: Removed.
- http/tests/security/contentSecurityPolicy/resources/sandboxed-eval.py: Added.
- http/tests/security/contentSecurityPolicy/resources/utils.py: Added.
(determine_content_security_policy_header):
- http/tests/security/contentSecurityPolicy/resources/worker-importScript-redirect-cross-origin-allowed.php: Removed.
- http/tests/security/contentSecurityPolicy/resources/worker-importScript-redirect-cross-origin-allowed.py: Added.
- http/tests/security/contentSecurityPolicy/resources/worker-importScript-redirect-cross-origin-blocked.php: Removed.
- http/tests/security/contentSecurityPolicy/resources/worker-importScript-redirect-cross-origin-blocked.py: Added.
- http/tests/security/contentSecurityPolicy/resources/worker-xhr-allowed.php: Removed.
- http/tests/security/contentSecurityPolicy/resources/worker-xhr-allowed.py: Added.
- http/tests/security/contentSecurityPolicy/resources/worker-xhr-redirect-cross-origin-allowed.php: Removed.
- http/tests/security/contentSecurityPolicy/resources/worker-xhr-redirect-cross-origin-allowed.py: Added.
- http/tests/security/contentSecurityPolicy/resources/worker-xhr-redirect-cross-origin-blocked.php: Removed.
- http/tests/security/contentSecurityPolicy/resources/worker-xhr-redirect-cross-origin-blocked.py: Added.
- http/tests/security/contentSecurityPolicy/resources/xsl-redirect-allowed.php: Removed.
- http/tests/security/contentSecurityPolicy/resources/xsl-redirect-allowed.py: Added.
- http/tests/security/contentSecurityPolicy/resources/xsl-redirect-blocked.php: Removed.
- http/tests/security/contentSecurityPolicy/resources/xsl-redirect-blocked.py: Added.
- http/tests/security/contentSecurityPolicy/same-origin-plugin-document-blocked-in-child-window-report-expected.txt:
- http/tests/security/contentSecurityPolicy/same-origin-plugin-document-blocked-in-child-window-report.php: Removed.
- http/tests/security/contentSecurityPolicy/same-origin-plugin-document-blocked-in-child-window-report.py: Added.
- http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-in-http-header-control.html:
- http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-in-http-header.html:
- http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-in-http-header2.php: Removed.
- http/tests/security/contentSecurityPolicy/sandbox-allow-scripts-in-http-header2.py: Added.
- http/tests/security/contentSecurityPolicy/sandbox-empty-in-http-header-expected.txt:
- http/tests/security/contentSecurityPolicy/sandbox-empty-in-http-header-inherited-by-subframe.php: Removed.
- http/tests/security/contentSecurityPolicy/sandbox-empty-in-http-header-inherited-by-subframe.py: Added.
- http/tests/security/contentSecurityPolicy/sandbox-empty-in-http-header.php: Removed.
- http/tests/security/contentSecurityPolicy/sandbox-empty-in-http-header.py: Added.
- http/tests/security/contentSecurityPolicy/sandbox-in-http-header-control-expected.txt:
- http/tests/security/contentSecurityPolicy/sandbox-in-http-header-control.html:
- http/tests/security/contentSecurityPolicy/sandbox-in-http-header-expected.txt:
- http/tests/security/contentSecurityPolicy/sandbox-in-http-header.html:
- http/tests/security/contentSecurityPolicy/sandbox-invalid-header-expected.txt:
- http/tests/security/contentSecurityPolicy/sandbox-invalid-header.html:
- http/tests/security/contentSecurityPolicy/sandbox-report-only.html:
- http/tests/security/contentSecurityPolicy/script-src-redirect-expected.txt:
- http/tests/security/contentSecurityPolicy/script-src-redirect.html:
- http/tests/security/contentSecurityPolicy/user-style-sheet-font-crasher.php: Removed.
- http/tests/security/contentSecurityPolicy/user-style-sheet-font-crasher.py: Added.
- http/tests/security/contentSecurityPolicy/worker-blob-inherits-csp-importScripts-redirect-cross-origin-blocked.html:
- http/tests/security/contentSecurityPolicy/worker-csp-blocks-xhr-redirect-cross-origin.html:
- http/tests/security/contentSecurityPolicy/worker-csp-importScripts-redirect-cross-origin-allowed.html:
- http/tests/security/contentSecurityPolicy/worker-csp-importScripts-redirect-cross-origin-blocked.html:
- http/tests/security/contentSecurityPolicy/worker-without-csp-importScripts-redirect-cross-origin-allowed.html:
- http/tests/security/contentSecurityPolicy/xsl-allowed.php: Removed.
- http/tests/security/contentSecurityPolicy/xsl-allowed.py: Added.
- http/tests/security/contentSecurityPolicy/xsl-blocked.php: Removed.
- http/tests/security/contentSecurityPolicy/xsl-blocked.py: Added.
- http/tests/security/contentSecurityPolicy/xsl-img-blocked.php: Removed.
- http/tests/security/contentSecurityPolicy/xsl-img-blocked.py: Added.
- http/tests/security/contentSecurityPolicy/xsl-redirect-allowed.html:
- http/tests/security/contentSecurityPolicy/xsl-redirect-allowed2.html:
- http/tests/security/contentSecurityPolicy/xsl-redirect-blocked.html:
- http/tests/security/contentSecurityPolicy/xsl-unaffected-by-style-src-1.php: Removed.
- http/tests/security/contentSecurityPolicy/xsl-unaffected-by-style-src-1.py: Added.
- http/tests/security/contentSecurityPolicy/xsl-unaffected-by-style-src-2.php: Removed.
- http/tests/security/contentSecurityPolicy/xsl-unaffected-by-style-src-2.py: Added.
- http/tests/security/cookie-module-import-expected.txt:
- http/tests/security/cookie-module-import-propagate-expected.txt:
- http/tests/security/cookie-module-import-propagate.html:
- http/tests/security/cookie-module-import.html:
- http/tests/security/cookie-module-propagate-expected.txt:
- http/tests/security/cookie-module-propagate.html:
- http/tests/security/cookie-module.html:
- http/tests/security/cookies/cookies-wrong-domain-rejected.php: Removed.
- http/tests/security/cookies/cookies-wrong-domain-rejected.py: Added.
- http/tests/security/cors-post-redirect-301.html:
- http/tests/security/cors-post-redirect-302.html:
- http/tests/security/cors-post-redirect-303.html:
- http/tests/security/cors-post-redirect-307-pson.html:
- http/tests/security/cors-post-redirect-307.html:
- http/tests/security/cors-post-redirect-308.html:
- http/tests/security/credentials-in-referer.html:
- http/tests/security/credentials-main-resource.html:
- http/tests/security/cross-origin-cached-images-canvas.html:
- http/tests/security/cross-origin-cached-images-expected.txt:
- http/tests/security/cross-origin-cached-images-parallel-expected.txt:
- http/tests/security/cross-origin-cached-images-parallel.html:
- http/tests/security/cross-origin-cached-images.html:
- http/tests/security/cross-origin-cached-resource-expected.txt:
- http/tests/security/cross-origin-cached-scripts-expected.txt:
- http/tests/security/cross-origin-cached-scripts-parallel-expected.txt:
- http/tests/security/cross-origin-cached-scripts-parallel.html:
- http/tests/security/cross-origin-cached-scripts.html:
- http/tests/security/cross-origin-clean-css-resource-timing.html:
- http/tests/security/cross-origin-css-9.html:
- http/tests/security/cross-origin-css-resource-timing.html:
- http/tests/security/css-mask-image-credentials.html:
- http/tests/security/css-mask-image.html:
- http/tests/security/http-0.9/default-port-script-blocked.html:
- http/tests/security/http-0.9/resources/close-connection.php: Removed.
- http/tests/security/http-0.9/resources/close-connection.py: Added.
- http/tests/security/import-module-crossorigin-loads-error.html:
- http/tests/security/import-script-crossorigin-loads-error.html:
- http/tests/security/isolatedWorld/bypass-main-world-csp-for-xhr-redirect.html:
- http/tests/security/isolatedWorld/bypass-main-world-csp-worker-blob-importScript-redirect-cross-origin.html:
- http/tests/security/isolatedWorld/bypass-main-world-csp-worker-importScripts-redirect-cross-origin.html:
- http/tests/security/isolatedWorld/bypass-main-world-csp-worker-redirect.html:
- http/tests/security/isolatedWorld/bypass-worker-csp-for-xhr-redirect-cross-origin.html:
- http/tests/security/isolatedWorld/bypass-worker-csp-for-xhr.html:
- http/tests/security/load-image-after-redirection-2-expected.txt:
- http/tests/security/load-image-after-redirection-2.html:
- http/tests/security/load-image-after-redirection-expected.txt:
- http/tests/security/load-image-after-redirection.html:
- http/tests/security/mixedContent/insecure-basic-auth-image-allowCrossOriginSubresourcesToAskForCredentials.https-expected.txt:
- http/tests/security/mixedContent/insecure-basic-auth-image-allowCrossOriginSubresourcesToAskForCredentials.https.html:
- http/tests/security/mixedContent/insecure-basic-auth-image.https-expected.txt:
- http/tests/security/mixedContent/insecure-basic-auth-image.https.html:
- http/tests/security/mixedContent/insecure-image-redirects-to-basic-auth-secure-image-allowCrossOriginSubresourcesToAskForCredentials-expected.txt:
- http/tests/security/mixedContent/insecure-image-redirects-to-basic-auth-secure-image-expected.txt:
- http/tests/security/mixedContent/insecure-script-redirects-to-basic-auth-secure-script-expected.https.txt:
- http/tests/security/mixedContent/insecure-script-redirects-to-basic-auth-secure-script-expected.txt:
- http/tests/security/mixedContent/insecure-stylesheet-redirects-to-basic-auth-secure-stylesheet-expected.txt:
- http/tests/security/mixedContent/resources/frame-with-insecure-image-redirects-to-basic-auth-secure-image.html:
- http/tests/security/mixedContent/resources/frame-with-insecure-script-redirects-to-basic-auth-secure-script.html:
- http/tests/security/mixedContent/resources/frame-with-insecure-stylesheet-redirects-to-basic-auth-secure-stylesheet.html:
- http/tests/security/mixedContent/resources/frame-with-programmatically-added-insecure-image-redirects-to-basic-auth-secure-image.html:
- http/tests/security/mixedContent/resources/subresource/protected-image.php: Removed.
- http/tests/security/mixedContent/resources/subresource/protected-image.py: Added.
- http/tests/security/mixedContent/resources/subresource/protected-page.php: Removed.
- http/tests/security/mixedContent/resources/subresource/protected-page.py: Added.
- http/tests/security/mixedContent/resources/subresource/protected-script.php: Removed.
- http/tests/security/mixedContent/resources/subresource/protected-script.py: Added.
- http/tests/security/mixedContent/resources/subresource/protected-stylesheet.php: Removed.
- http/tests/security/mixedContent/resources/subresource/protected-stylesheet.py: Added.
- http/tests/security/mixedContent/resources/subresource2/protected-image.php: Removed.
- http/tests/security/mixedContent/resources/subresource2/protected-image.py: Added.
- http/tests/security/mixedContent/secure-page-navigates-to-basic-auth-insecure-page.https-expected.txt:
- http/tests/security/mixedContent/secure-page-navigates-to-basic-auth-insecure-page.https.html:
- http/tests/security/mixedContent/secure-page-navigates-to-basic-auth-secure-page-via-insecure-redirect.https-expected.txt:
- http/tests/security/mixedContent/secure-page-navigates-to-basic-auth-secure-page-via-insecure-redirect.https.html:
- http/tests/security/mixedContent/secure-redirect-to-insecure-redirect-to-basic-auth-secure-image-allowCrossOriginSubresourcesToAskForCredentials.https-expected.txt:
- http/tests/security/mixedContent/secure-redirect-to-insecure-redirect-to-basic-auth-secure-image-allowCrossOriginSubresourcesToAskForCredentials.https.html:
- http/tests/security/mixedContent/secure-redirect-to-insecure-redirect-to-basic-auth-secure-image.https-expected.txt:
- http/tests/security/mixedContent/secure-redirect-to-insecure-redirect-to-basic-auth-secure-image.https.html:
- http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-insecure-image-allowCrossOriginSubresourcesToAskForCredentials.https-expected.txt:
- http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-insecure-image-allowCrossOriginSubresourcesToAskForCredentials.https.html:
- http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-insecure-image.https-expected.txt:
- http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-insecure-image.https.html:
- http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-secure-image-allowCrossOriginSubresourcesToAskForCredentials.https-expected.txt:
- http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-secure-image-allowCrossOriginSubresourcesToAskForCredentials.https.html:
- http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-secure-image.https-expected.txt:
- http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-secure-image.https.html:
- http/tests/security/no-javascript-location-percent-escaped.html:
- http/tests/security/no-javascript-location.html:
- http/tests/security/no-javascript-refresh-expected.txt:
- http/tests/security/no-javascript-refresh-percent-escaped.php: Removed.
- http/tests/security/no-javascript-refresh-percent-escaped.py: Added.
- http/tests/security/no-javascript-refresh-spaces-expected.txt:
- http/tests/security/no-javascript-refresh-spaces.php: Removed.
- http/tests/security/no-javascript-refresh-spaces.py: Added.
- http/tests/security/no-javascript-refresh.php: Removed.
- http/tests/security/no-javascript-refresh.py: Added.
- http/tests/security/no-referrer.html:
- http/tests/security/private-browsing-http-auth.html:
- http/tests/security/referrer-policy-attribute-style-no-referrer.html:
- http/tests/security/referrer-policy-header-and-meta-tag-emptyString.html:
- http/tests/security/referrer-policy-header-and-meta-tag.html:
- http/tests/security/referrer-policy-window-open.html:
- http/tests/security/resources/abe-allow-credentials.php: Removed.
- http/tests/security/resources/abe-allow-credentials.py: Added.
- http/tests/security/resources/abe-allow-star.php: Removed.
- http/tests/security/resources/abe-allow-star.py: Added.
- http/tests/security/resources/allow-if-origin.php: Removed.
- http/tests/security/resources/allow-if-origin.py: Added.
- http/tests/security/resources/attachment.php: Removed.
- http/tests/security/resources/auth-echo.php: Removed.
- http/tests/security/resources/auth-echo.py: Added.
- http/tests/security/resources/basic-auth-subresource.html:
- http/tests/security/resources/canvas-cors-subtest.html:
- http/tests/security/resources/captions-with-access-control-headers.php: Removed.
- http/tests/security/resources/captions-with-access-control-headers.py: Added.
- http/tests/security/resources/cookie-protected-script.php: Removed.
- http/tests/security/resources/cookie-protected-script.py: Added.
- http/tests/security/resources/cors-deny.php: Removed.
- http/tests/security/resources/cors-deny.py: Added.
- http/tests/security/resources/cors-post-redirect-target.php: Removed.
- http/tests/security/resources/cors-post-redirect-target.py: Added.
- http/tests/security/resources/credentials-in-referer-frame.php: Removed.
- http/tests/security/resources/credentials-in-referer-frame.py: Added.
- http/tests/security/resources/credentials-in-referer.php: Removed.
- http/tests/security/resources/credentials-in-referer.py: Added.
- http/tests/security/resources/credentials-main-resource.php: Removed.
- http/tests/security/resources/credentials-main-resource.py: Added.
- http/tests/security/resources/css-mask-image-credentials-2.html:
- http/tests/security/resources/echo-referrer.php: Removed.
- http/tests/security/resources/echo-referrer.py: Added.
- http/tests/security/resources/empty-svg.php: Removed.
- http/tests/security/resources/empty-svg.py: Added.
- http/tests/security/resources/get-css-if-origin-header.php: Removed.
- http/tests/security/resources/get-css-if-origin-header.py: Added.
- http/tests/security/resources/green-if-no-referrer-css.php: Removed.
- http/tests/security/resources/green-if-no-referrer-css.py: Added.
- http/tests/security/resources/image-access-control.php: Removed.
- http/tests/security/resources/image-access-control.py: Added.
- http/tests/security/resources/image-credential-check.php: Removed.
- http/tests/security/resources/image-credential-check.py: Added.
- http/tests/security/resources/import-module-crossorigin-loads-error-src.js:
- http/tests/security/resources/imported-loading-subresources.css:
(#mydiv):
- http/tests/security/resources/loading-subresources.css:
(#mydiv):
- http/tests/security/resources/loading-subresources.php: Removed.
- http/tests/security/resources/loading-subresources.py: Added.
- http/tests/security/resources/module-nest-import.php: Removed.
- http/tests/security/resources/module-nest-import.py: Added.
- http/tests/security/resources/nested-referrer-policy-postmessage.html:
- http/tests/security/resources/no-javascript-location-percent-escaped.php: Removed.
- http/tests/security/resources/no-javascript-location-percent-escaped.py: Added.
- http/tests/security/resources/no-javascript-location.php: Removed.
- http/tests/security/resources/no-javascript-location.py: Added.
- http/tests/security/resources/no-referrer-frame.php: Removed.
- http/tests/security/resources/no-referrer-frame.py: Added.
- http/tests/security/resources/no-referrer.php: Removed.
- http/tests/security/resources/no-referrer.py: Added.
- http/tests/security/resources/pass-if-no-referrer.php: Removed.
- http/tests/security/resources/pass-if-no-referrer.py: Added.
- http/tests/security/resources/postReferrer.php: Removed.
- http/tests/security/resources/postReferrer.py: Added.
- http/tests/security/resources/redirect-allow-star.php: Removed.
- http/tests/security/resources/redirect-allow-star.py: Added.
- http/tests/security/resources/redirect.php: Removed.
- http/tests/security/resources/redirect.py: Added.
- http/tests/security/resources/referrer-policy-log.php: Removed.
- http/tests/security/resources/referrer-policy-log.py: Added.
- http/tests/security/resources/referrer-policy-postmessage.php: Removed.
- http/tests/security/resources/referrer-policy-postmessage.py: Added.
- http/tests/security/resources/referrer-policy-redirect-link-downgrade.html:
- http/tests/security/resources/referrer-policy-redirect-link.html:
- http/tests/security/resources/referrer-policy-redirect.html:
- http/tests/security/resources/referrer-policy-start.html:
- http/tests/security/resources/rel-noreferrer.html:
- http/tests/security/resources/send-mime-types.php: Removed.
- http/tests/security/resources/send-mime-types.py: Added.
- http/tests/security/resources/serve-referrer-policy-and-meta-tag.php: Removed.
- http/tests/security/resources/serve-referrer-policy-and-meta-tag.py: Added.
- http/tests/security/resources/serve-referrer-policy-and-test.php:
- http/tests/security/resources/set-cookie.php: Removed.
- http/tests/security/resources/set-cookie.py: Added.
- http/tests/security/resources/showRefererImage.php: Removed.
- http/tests/security/resources/showRefererImage.py: Added.
- http/tests/security/resources/subresource1/protected-image.php: Removed.
- http/tests/security/resources/subresource1/protected-image.py: Added.
- http/tests/security/resources/subresource2/protected-image.php: Removed.
- http/tests/security/resources/subresource2/protected-image.py: Added.
- http/tests/security/resources/xorigincss1-allow-star.php: Removed.
- http/tests/security/resources/xorigincss1-allow-star.py: Added.
- http/tests/security/shape-image-cors-redirect-error-message-logging-1.html:
- http/tests/security/shape-image-cors-redirect-error-message-logging-2.html:
- http/tests/security/shape-image-cors-redirect-error-message-logging-3-expected.txt:
- http/tests/security/shape-image-cors-redirect-error-message-logging-3.html:
- http/tests/security/shape-image-cors-redirect-error-message-logging-4.html:
- http/tests/security/shape-image-cors-redirect.html:
- http/tests/security/shape-image-cors.html:
- http/tests/security/shape-outside-and-cached-resources-expected.html:
- http/tests/security/shape-outside-and-cached-resources.html:
- http/tests/security/srcdoc-inherits-referrer-for-forms.html:
- http/tests/security/srcdoc-inherits-referrer.html:
- http/tests/security/strip-referrer-to-origin-for-third-party-redirects-in-private-mode.html:
- http/tests/security/strip-referrer-to-origin-for-third-party-requests-in-private-mode.html:
- http/tests/security/svg-image-leak.html:
- http/tests/security/text-track-crossorigin.html:
- http/tests/security/webaudio-render-remote-audio-allowed-crossorigin-redirect.html:
- http/tests/security/webaudio-render-remote-audio-blocked-no-crossorigin-redirect.html:
- http/tests/security/webgl-remote-read-remote-image-allowed-with-credentials.html:
- http/tests/security/webgl-remote-read-remote-image-allowed.html:
- http/tests/security/webgl-remote-read-remote-image-blocked-no-crossorigin.html:
- http/tests/security/xss-DENIED-getSVGDocument-iframe.html:
- http/tests/security/xss-DENIED-getSVGDocument-object.html:
- http/tests/security/xss-DENIED-mime-type-execute-as-html.html:
- http/tests/security/xssAuditor/crash-while-loading-tag-with-pause.html:
- http/tests/security/xssAuditor/full-block-iframe-no-inherit.php: Removed.
- http/tests/security/xssAuditor/full-block-iframe-no-inherit.py: Added.
- http/tests/security/xssAuditor/resources/echo-intertag.pl:
- http/tests/security/xssAuditor/resources/tag-with-pause.php: Removed.
- http/tests/security/xssAuditor/resources/tag-with-pause.py: Added.
- http/tests/ssl/referer-301.html:
- http/tests/ssl/referer-303.html:
- http/tests/xmlhttprequest/cacheable-cross-origin-redirect-crash.html:
- platform/gtk/TestExpectations:
- platform/ios-wk1/TestExpectations:
- platform/ios/TestExpectations:
- platform/mac-wk1/TestExpectations:
- platform/mac-wk1/http/tests/security/contentSecurityPolicy/1.1/child-src/worker-redirect-blocked-expected.txt:
- platform/mac-wk1/http/tests/security/contentSecurityPolicy/connect-src-eventsource-redirect-to-blocked-expected.txt:
- platform/mac-wk1/http/tests/security/contentSecurityPolicy/connect-src-xmlhttprequest-redirect-to-blocked-expected.txt:
- platform/mac-wk2/TestExpectations:
- platform/win/TestExpectations:
- platform/win/http/tests/security/basic-auth-subresource-expected.txt:
- platform/win/http/tests/security/contentSecurityPolicy/1.1/child-src/worker-redirect-blocked-expected.txt:
- platform/win/http/tests/security/contentSecurityPolicy/connect-src-eventsource-redirect-to-blocked-expected.txt:
- platform/win/http/tests/security/contentSecurityPolicy/connect-src-xmlhttprequest-redirect-to-blocked-expected.txt:
- platform/wk2/TestExpectations:
- platform/wk2/http/tests/security/basic-auth-subresource-expected.txt:
- platform/wk2/http/tests/security/contentSecurityPolicy/block-all-mixed-content/insecure-image-in-iframe-with-enforced-and-report-policies-expected.txt:
- platform/wk2/http/tests/security/mixedContent/insecure-basic-auth-image-allowCrossOriginSubresourcesToAskForCredentials.https-expected.txt:
- platform/wk2/http/tests/security/mixedContent/insecure-image-redirects-to-basic-auth-secure-image-allowCrossOriginSubresourcesToAskForCredentials-expected.txt:
- platform/wk2/http/tests/security/mixedContent/secure-redirect-to-insecure-redirect-to-basic-auth-secure-image-allowCrossOriginSubresourcesToAskForCredentials.https-expected.txt:
- platform/wk2/http/tests/security/mixedContent/secure-redirect-to-secure-redirect-to-basic-auth-insecure-image-allowCrossOriginSubresourcesToAskForCredentials.https-expected.txt:
- 3:27 PM Changeset in webkit [274243] by
-
- 2 edits in branches/safari-611.1.21.1-branch/Source/WebCore
Cherry-pick r274203. rdar://problem/75273198
Release assertion failures under Editor::scanSelectionForTelephoneNumbers
https://bugs.webkit.org/show_bug.cgi?id=223016
<rdar://problem/73159921>
Reviewed by Ryosuke Niwa.
No new tests; speculative fix for a non-reproducible crash, which theoretically
has been avoided in a second way on trunk.
- editing/Editor.cpp: (WebCore::extendSelection): (WebCore::Editor::scanSelectionForTelephoneNumbers): In r272777, Ryosuke discovered a case where FrameSelection::isRange() can be true, but firstRange() is an invalid range; in testing, forcing this to be the case reproduces the crash as reported.
While that change may have fixed the root cause of this crash, we don't
know that we've found all of the ways that one can get a orphaned
selection *into* FrameSelection, and want a less risky workaround for
this crash, so we'll also fix it in scanSelectionForTelephoneNumbers,
by null-checking the result of FrameSelection::firstRange().
Also null-check the result of extendSelection(), since I cannot prove for sure
that a valid range cannot become invalid in this method.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@274203 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 3:25 PM Changeset in webkit [274242] by
-
- 8 edits in branches/safari-611.1.21.1-branch/Source
Versioning.
WebKit-7611.1.21.1.8
- 2:07 PM Changeset in webkit [274241] by
-
- 4 edits in trunk/Source/WTF
Use std::forward for forwarding references instead of WTFMove
https://bugs.webkit.org/show_bug.cgi?id=223040
Reviewed by Darin Adler.
A newer version of clang produced a helpful warning that told
us we were using WTFMove in places where we should use std::forward.
- wtf/Expected.h:
(std::experimental::fundamentals_v3::expected::operator=):
- wtf/Function.h:
(WTF::Function<Out):
- wtf/NeverDestroyed.h:
(WTF::makeNeverDestroyed):
- 2:03 PM Changeset in webkit [274240] by
-
- 4 edits in trunk/Tools
Improve AppleLanguagesTest.UpdateAppleLanguages API test
https://bugs.webkit.org/show_bug.cgi?id=223037
Reviewed by Per Arne Vollan.
Made the following improvements to the test:
- Use 'en-GB' initially instead of 'en-US'. Our bots use 'en-US' by default so this makes sure we are indeed able to change the system language.
- Make it so that the test no longer times out if the languageevent fires but navigator.language returns an unexpected language. This was done by using [TestWKWebView performAfterReceivingAnyMessage:] instead of [TestWKWebView performAfterMessage:action:].
- Add an internal timeout handling in the test instead of relying on the test suite's timeout. Without this, we would fail to reset the system's language at the end of the test in case of a timeout.
- TestWebKitAPI/Tests/WebKit/OverrideAppleLanguagesPreference.mm:
(TEST_F):
- TestWebKitAPI/cocoa/TestWKWebView.h:
- TestWebKitAPI/cocoa/TestWKWebView.mm:
(-[TestMessageHandler setWildcardMessageHandler:]):
(-[TestMessageHandler userContentController:didReceiveScriptMessage:]):
(-[TestWKWebView performAfterReceivingAnyMessage:]):
- 2:00 PM Changeset in webkit [274239] by
-
- 2 edits in trunk/Source/JavaScriptCore
executeModuleProgram needs to ensure module argument array is still in scope
https://bugs.webkit.org/show_bug.cgi?id=223039
Reviewed by Saam Barati.
This was causing testing builds to crash for wasm tests.
- interpreter/Interpreter.cpp:
(JSC::Interpreter::executeModuleProgram):
- 1:58 PM Changeset in webkit [274238] by
-
- 4 edits in branches/safari-612.1.5-branch/Source
Cherry-pick r273453. rdar://problem/75280351
Unreviewed, fix build with the latest iOS SDK.
Source/WebCore:
- platform/DragData.h: (WebCore::DragData::operator=): Deleted.
Source/WebKit:
- Shared/FocusedElementInformation.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@273453 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 1:56 PM Changeset in webkit [274237] by
-
- 2 edits in trunk/Source/ThirdParty/libwebrtc
CRASH in MergeUVRow_AVX2
https://bugs.webkit.org/show_bug.cgi?id=222996
<rdar://75183835>
Reviewed by Geoff Garen.
Crash logging shows occasional crashes in MergeUVRow_AVX2. These crashes all occur when
calling -[AVAssetImageGenerator copyCGImageAtTime:actualTime:error:]. This path is only used
when there was no prior image generated, and a new image is not available from
AVPlayerItemVideoOutput, which is a scenario which only occurs when doing a software-paint
immedately after a <video> element begins loading. While we should probably stop using
AVAssetImageGenerator, that would be a much riskier change, and wouldn't address the
underlying cause of the crash. Instead, bailing out early when in this state would cause
decoding to fail, but since this scenario only appears to occur for the
AVAssetImageGenerator path, painting would quickly recover as soon as
AVPlayerItemVideoOutput begins emitting frames.
The explanation for these crashes seems to be a mismatch between the size of the libvpx
output frame and the size of the CVPixelBuffer where the converted frame data is being
stored. Add a pre-flight check that will bail out early in this scenario.
- Source/webrtc/sdk/WebKit/WebKitUtilities.mm:
(webrtc::CopyVideoFrameToPixelBuffer):
- 1:45 PM Changeset in webkit [274236] by
-
- 2 edits in branches/safari-611.1.21.0-branch/Source/WebKit
Cherry-pick r274231. rdar://problem/75279800
[iOS] Add additional telemetry to WebContent sandbox
https://bugs.webkit.org/show_bug.cgi?id=223035
<rdar://75275161>
Reviewed by Geoffrey Garen.
Add additional telemetry to WebContent sandbox on iOS.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@274231 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 1:41 PM Changeset in webkit [274235] by
-
- 10 edits2 deletes in trunk
Improve font-variation-settings interpolation
https://bugs.webkit.org/show_bug.cgi?id=223027
Reviewed by Dean Jackson.
LayoutTests/imported/w3c:
Add an extra 140 PASS results.
- web-platform-tests/css/css-fonts/inheritance-expected.txt:
- web-platform-tests/css/css-fonts/animations/font-variation-settings-composition-expected.txt:
- web-platform-tests/css/css-fonts/animations/font-variation-settings-interpolation-expected.txt:
- web-platform-tests/web-animations/animation-model/animation-types/interpolation-per-property-001-expected.txt:
Source/WebCore:
The animation wrapper for font-variation-settings had no canInterpolate() override. We now
implement such a method with the same logic used for blendFunc() method for FontVariationSettings
which only blends when the values have the same number of entries, and the same tag for each
entry.
We also modify the blendFunc() method to remove the return of empty values since it should only
be called in a scenario where the method can blend the values (due to canInterpolate() being
implemented) or with progress equal to 0 or 1 if the animation is discrete. In the latter cases,
we simply return the "from" or "to" values as-is.
Finally, to pass the tests for the "initial" and "inherit" values, we implement the custom
style builder methods for font-variation-settings.
- animation/CSSPropertyAnimation.cpp:
(WebCore::blendFunc):
- style/StyleBuilderCustom.h:
(WebCore::Style::BuilderCustom::applyInitialFontVariationSettings):
(WebCore::Style::BuilderCustom::applyInheritFontVariationSettings):
LayoutTests:
Remove an incorrect test that is also testing functionality well covered by the WPT test
css/css-fonts/animations/font-variation-settings-interpolation.html.
- animations/font-variations/font-variation-settings-unlike-expected.txt: Deleted.
- animations/font-variations/font-variation-settings-unlike.html: Deleted.
- platform/win/TestExpectations:
- 1:30 PM Changeset in webkit [274234] by
-
- 6 edits in trunk
Improve background-size interpolation
https://bugs.webkit.org/show_bug.cgi?id=223025
Reviewed by Dean Jackson.
LayoutTests/imported/w3c:
Add an extra 32 PASS results. We now pass all the background-size interpolation tests except for
those involving the "contain" and "cover" keywords which we don't support.
- web-platform-tests/css/css-backgrounds/animations/background-size-interpolation-expected.txt:
Source/WebCore:
Add the necessary canInterpolate() overrides to classes used to interpolate background-size.
- animation/CSSPropertyAnimation.cpp:
(WebCore::FillLayerAnimationPropertyWrapperBase::canInterpolate const):
LayoutTests:
Add console logging for transitions/transition-to-from-undefined.html which tests transitions
between properties that cannot be interpolated and thus don't yield a transition.
- transitions/lengthsize-transition-to-from-auto-expected.txt:
- 1:20 PM Changeset in webkit [274233] by
-
- 3 edits in trunk/Tools
[WPE][GTK] Running Tools/gtk/install-dependencies installs too many packages on Debian/Ubuntu
https://bugs.webkit.org/show_bug.cgi?id=223036
Reviewed by Don Olmstead.
Avoid installing unneeded packages by passing --no-install-recommends to apt-get
invocations. While at it, also make sure to always pass -y to make the installation
non-interactive.
- gtk/install-dependencies:
- wpe/install-dependencies:
- 1:16 PM Changeset in webkit [274232] by
-
- 10 edits2 adds in trunk
[iOS][FCR] Color inputs are painted outside their box
https://bugs.webkit.org/show_bug.cgi?id=222299
<rdar://problem/74621954>
Reviewed by Wenson Hsieh.
Source/WebCore:
Color inputs have a gradient decoration around their inner swatch. Since
this decoration is painted using a stroke with a non-zero thickness
around the input's box, a portion of the decoration overflows the box.
To fix, use an inset rect to draw the gradient decoration, ensuring the
stroke is drawn within the input's box.
This patch also updates the padding and stroke thickness to match the
latest specifications.
Test: fast/forms/ios/form-control-refresh/color/paint-within-box.html
- css/html.css:
(input[type="color"]):
Update padding to match specification.
(input[type="color"]::-webkit-color-swatch-wrapper):
Update padding to match specification.
- css/legacyFormControlsIOS.css:
(input[type="color"]::-webkit-color-swatch-wrapper):
- rendering/RenderTheme.cpp:
(WebCore::RenderTheme::paintDecorations):
Use the device-pixel-snapped rect when painting the decoration for color
inputs, to ensure the swatch is centered within the input.
We should also consider moving other controls to using the
device-pixel-snapped rect when painting, as some controls still use
integral snapped rects. However, each control should be individually
audited to avoid breakage.
(WebCore::RenderTheme::paintColorWellDecorations):
- rendering/RenderTheme.h:
- rendering/RenderThemeIOS.h:
- rendering/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::colorInputStyleSheet):
Update the default width/height of color inputs to match the latest
specification.
(WebCore::RenderThemeIOS::paintColorWellDecorations):
Inset the stroke rect to ensure the gradient is painted within the
input's box.
LayoutTests:
Added a reference test which verifies that color inputs are painted
within their box. This is done by drawing a square over the input
and comparing to a page which contains a square of the same size,
with the input hidden.
Rebaselined tests after change to padding.
- fast/forms/ios/form-control-refresh/color/paint-within-box-expected.html: Added.
- fast/forms/ios/form-control-refresh/color/paint-within-box.html: Added.
- platform/ios-wk2/imported/w3c/web-platform-tests/html/rendering/widgets/baseline-alignment-and-overflow.tentative-expected.txt:
- platform/ios/fast/forms/color/input-appearance-color-expected.txt:
- 1:07 PM Changeset in webkit [274231] by
-
- 2 edits in trunk/Source/WebKit
[iOS] Add additional telemetry to WebContent sandbox
https://bugs.webkit.org/show_bug.cgi?id=223035
<rdar://75275161>
Reviewed by Geoffrey Garen.
Add additional telemetry to WebContent sandbox on iOS.
- Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
- 12:43 PM Changeset in webkit [274230] by
-
- 2 edits in trunk/Source/WebInspectorUI
Web Inspector: Syntax highlighting for JSX is incorrect
https://bugs.webkit.org/show_bug.cgi?id=217613
<rdar://problem/70210975>
Reviewed by BJ Burg.
Out of the box, React specifies the "js" extension for JSX files.
Use JSX mode for source map resources with the "js" extension. This
appears to match what the other browsers' developer tools do.
- UserInterface/Models/SourceMapResource.js:
(WI.SourceMapResource):
- 12:36 PM Changeset in webkit [274229] by
-
- 3 edits in trunk/Source/WebInspectorUI
Web Inspector: CSS Grid Inspector clean-up
https://bugs.webkit.org/show_bug.cgi?id=222913
<rdar://problem/75171301>
Reviewed by BJ Burg.
Remove obsolete methods to show/hide the grid overlay directly from a DOMNode.
Remove engineering-only context menu helpers used while implementing grid overlays.
- UserInterface/Models/DOMNode.js:
- UserInterface/Views/ContextMenuUtilities.js:
- 12:09 PM Changeset in webkit [274228] by
-
- 12 edits in trunk
[Cocoa] Add additional bundle ID property to WKWebViewConfiguration
https://bugs.webkit.org/show_bug.cgi?id=222919
<rdar://problem/75013854>
Reviewed by Alex Christensen.
Source/WebKit:
Add an additional property to _WKWebsiteDataStoreConfiguration to help thread the correct bundle
ID of the driving application to lower levels of WebKit so that we can provide better messaging
when a remote service (e.g., Safari View Controller or ASWebAuthenticationSession) is used. Currently
we often lack context and have to report a generic "web content" message that doesn't help a user
understand which app is actually requesting the load.
We cannot use either of the existing bundle ID's for this purpose since we always indicate 'com.apple.Safari'
as the source application to ensure proper handling of web traffic in lower levels of the system Network stack,
and sourceApplicationSecondaryIdentifier is used for Apple Pay purposes and cannot be repurposed for this task.
This first patch adds the property. A follow-up patch will flesh out the implementation.
- NetworkProcess/NetworkSessionCreationParameters.cpp:
(WebKit::NetworkSessionCreationParameters::encode const):
(WebKit::NetworkSessionCreationParameters::decode):
- NetworkProcess/NetworkSessionCreationParameters.h:
- NetworkProcess/cocoa/NetworkSessionCocoa.h:
- NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::NetworkSessionCocoa::attributedBundleIdentifier const):
(WebKit::NetworkSessionCocoa::NetworkSessionCocoa):
- UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.h:
- UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.mm:
(-[_WKWebsiteDataStoreConfiguration setAttributedBundleIdentifier:]):
(-[_WKWebsiteDataStoreConfiguration attributedBundleIdentifier]):
- UIProcess/WebsiteData/Cocoa/WebsiteDataStoreCocoa.mm:
(WebKit::WebsiteDataStore::platformSetNetworkParameters):
- UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp:
(WebKit::WebsiteDataStoreConfiguration::copy):
- UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h:
(WebKit::WebsiteDataStoreConfiguration::attributedBundleIdentifier const):
(WebKit::WebsiteDataStoreConfiguration::setAttributedBundleIdentifier):
Tools:
Update existing SettingNonPersistentDataStorePathsThrowsException test with new property.
- TestWebKitAPI/Tests/WebKitCocoa/WKWebsiteDatastore.mm:
(TestWebKitAPI::TEST):
- 11:58 AM Changeset in webkit [274227] by
-
- 77 edits in trunk/Source
[Cocoa] Make WebKit API Objective-C objects safe to release on non-main threads
https://bugs.webkit.org/show_bug.cgi?id=223013
Reviewed by Geoffrey Garen.
Source/WebCore:
- platform/mac/WebCoreObjCExtras.h: Added WebCoreObjCScheduleDeallocateOnMainRunLoop.
Use #pragma once.
- platform/mac/WebCoreObjCExtras.mm:
(safeIsKindOfClass): Added. Allows us to use the functions below on classes that
play proxying tricks with the isKindOfClass: method.
(WebCoreObjCScheduleDeallocateOnMainThread): Use safeIsKindOfClass.
(WebCoreObjCScheduleDeallocateOnMainRunLoop): Added.
Source/WebKit:
Used ensureOnMainRunLoop in dealloc methods where possible to make them
thread-safe. Used WebCoreObjCScheduleDeallocateOnMainRunLoop instead in cases
that were too complex to be done with ensureOnMainRunLoop.
- Shared/API/APIFrameHandle.cpp:
(API::FrameHandle::~FrameHandle): Deleted.
- Shared/API/APIFrameHandle.h: Use pragma once. Marked the class final.
Removed explicit destructor because it is not helpful.
- Shared/API/Cocoa/_WKFrameHandle.mm:
(-[_WKFrameHandle dealloc]): Use WebCoreObjCScheduleDeallocateOnMainRunLoop.
- Shared/API/Cocoa/_WKHitTestResult.mm:
(-[_WKHitTestResult dealloc]): Ditto.
- Shared/Cocoa/WKNSArray.mm:
(-[WKNSArray dealloc]): Ditto.
- Shared/Cocoa/WKNSData.mm:
(-[WKNSData dealloc]): Ditto.
- Shared/Cocoa/WKNSDictionary.mm:
(-[WKNSDictionary dealloc]): Ditto.
- Shared/Cocoa/WKObject.mm:
(-[WKObject dealloc]): Ditto.
- UIProcess/API/C/mac/WKPagePrivateMac.mm:
(-[WKObservablePageState dealloc]): Use ensureOnMainRunLoop.
- UIProcess/API/Cocoa/PageLoadStateObserver.h: Added clearObject for use in
the WKObservablePageState deallc method. Removed header guards since this is
an Objective-C header and #import takes care of it.
- UIProcess/API/Cocoa/WKBackForwardList.mm:
(-[WKBackForwardList dealloc]): Use WebCoreObjCScheduleDeallocateOnMainRunLoop.
- UIProcess/API/Cocoa/WKBackForwardListItem.mm:
(-[WKBackForwardListItem dealloc]): Ditto.
- UIProcess/API/Cocoa/WKBrowsingContextController.mm:
(-[WKBrowsingContextController dealloc]): Ditto.
- UIProcess/API/Cocoa/WKBrowsingContextGroup.mm:
(-[WKBrowsingContextGroup dealloc]): Ditto.
- UIProcess/API/Cocoa/WKConnection.mm:
(-[WKConnection dealloc]): Ditto.
- UIProcess/API/Cocoa/WKContentRuleList.mm:
(-[WKContentRuleList dealloc]): Ditto.
- UIProcess/API/Cocoa/WKContentRuleListStore.mm:
(-[WKContentRuleListStore dealloc]): Ditto.
- UIProcess/API/Cocoa/WKContentWorld.mm:
(-[WKContentWorld dealloc]): Ditto.
- UIProcess/API/Cocoa/WKDownload.mm:
(-[WKDownload dealloc]): Ditto.
- UIProcess/API/Cocoa/WKFrameInfo.mm:
(-[WKFrameInfo dealloc]): Ditto.
- UIProcess/API/Cocoa/WKHTTPCookieStore.mm:
(-[WKHTTPCookieStore dealloc]): Ditto.
- UIProcess/API/Cocoa/WKNavigation.mm:
(-[WKNavigation dealloc]): Ditto.
- UIProcess/API/Cocoa/WKNavigationAction.mm:
(-[WKNavigationAction dealloc]): Ditto.
- UIProcess/API/Cocoa/WKNavigationData.mm:
(-[WKNavigationData dealloc]): Ditto.
- UIProcess/API/Cocoa/WKNavigationResponse.mm:
(-[WKNavigationResponse dealloc]): Ditto.
- UIProcess/API/Cocoa/WKPreferences.mm:
(-[WKPreferences dealloc]): Ditto.
- UIProcess/API/Cocoa/WKProcessPool.mm:
(-[WKProcessPool dealloc]): Ditto.
- UIProcess/API/Cocoa/WKSecurityOrigin.mm:
(-[WKSecurityOrigin dealloc]): Ditto.
- UIProcess/API/Cocoa/WKUserContentController.mm:
(-[WKUserContentController dealloc]): Ditto.
- UIProcess/API/Cocoa/WKUserScript.mm:
(-[WKUserScript dealloc]): Ditto.
- UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView dealloc]): Ditto.
- UIProcess/API/Cocoa/WKWebpagePreferences.mm:
(-[WKWebpagePreferences dealloc]): Ditto.
- UIProcess/API/Cocoa/WKWebsiteDataRecord.mm:
(-[WKWebsiteDataRecord dealloc]): Ditto.
- UIProcess/API/Cocoa/WKWebsiteDataStore.mm:
(-[WKWebsiteDataStore dealloc]): Ditto.
- UIProcess/API/Cocoa/WKWindowFeatures.mm:
(-[WKWindowFeatures dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKApplicationManifest.mm:
(-[_WKApplicationManifest dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKAttachment.mm:
(-[_WKAttachment dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKAutomationSession.mm:
(-[_WKAutomationSession dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKContentRuleListAction.mm:
(-[_WKContentRuleListAction dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKCustomHeaderFields.mm:
(-[_WKCustomHeaderFields dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKExperimentalFeature.mm:
(-[_WKExperimentalFeature dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKFrameTreeNode.mm:
(-[_WKFrameTreeNode dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKGeolocationPosition.mm:
(-[_WKGeolocationPosition dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKInspectorConfiguration.mm:
(-[_WKInspectorConfiguration dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKInspectorDebuggableInfo.mm:
(-[_WKInspectorDebuggableInfo dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKInspectorExtension.mm:
(-[_WKInspectorExtension dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKInternalDebugFeature.mm:
(-[_WKInternalDebugFeature dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKProcessPoolConfiguration.mm:
(-[_WKProcessPoolConfiguration dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKResourceLoadInfo.mm:
(-[_WKResourceLoadInfo dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKResourceLoadStatisticsFirstParty.mm:
(-[_WKResourceLoadStatisticsFirstParty dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKResourceLoadStatisticsThirdParty.mm:
(-[_WKResourceLoadStatisticsThirdParty dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKUserInitiatedAction.mm:
(-[_WKUserInitiatedAction dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKUserStyleSheet.mm:
(-[_WKUserStyleSheet dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKVisitedLinkStore.mm:
(-[_WKVisitedLinkStore dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKWebAuthenticationAssertionResponse.mm:
(-[_WKWebAuthenticationAssertionResponse dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm:
(-[_WKWebAuthenticationPanel dealloc]): Ditto.
- UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.mm:
(-[_WKWebsiteDataStoreConfiguration dealloc]): Ditto.
- UIProcess/API/mac/WKView.mm:
(-[WKView dealloc]): Ditto.
- UIProcess/Cocoa/WKSafeBrowsingWarning.mm:
(-[WKSafeBrowsingWarning dealloc]): Use ensureOnMainRunLoop.
- UIProcess/mac/WKPrintingView.mm:
(-[WKPrintingView dealloc]): Ditto.
- WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInFrame.mm:
(-[WKWebProcessPlugInFrame dealloc]): Use WebCoreObjCScheduleDeallocateOnMainRunLoop.
- WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInHitTestResult.mm:
(-[WKWebProcessPlugInHitTestResult dealloc]): Ditto.
- WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInNodeHandle.mm:
(-[WKWebProcessPlugInNodeHandle dealloc]): Ditto.
- WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInPageGroup.mm:
(-[WKWebProcessPlugInPageGroup dealloc]): Ditto.
- WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInRangeHandle.mm:
(-[WKWebProcessPlugInRangeHandle dealloc]): Ditto.
- WebProcess/InjectedBundle/API/Cocoa/WKWebProcessPlugInScriptWorld.mm:
(-[WKWebProcessPlugInScriptWorld dealloc]): Ditto.
- WebProcess/InjectedBundle/API/mac/WKDOMNode.mm:
(-[WKDOMNode dealloc]): Use ensureOnMainRunLoop.
- WebProcess/InjectedBundle/API/mac/WKDOMRange.mm:
(-[WKDOMRange dealloc]): Ditto.
- WebProcess/InjectedBundle/API/mac/WKWebProcessPlugIn.mm:
(-[WKWebProcessPlugInController dealloc]): Use WebCoreObjCScheduleDeallocateOnMainRunLoop.
- WebProcess/InjectedBundle/API/mac/WKWebProcessPlugInBrowserContextController.mm:
(-[WKWebProcessPlugInBrowserContextController dealloc]): Ditto.
Source/WTF:
- wtf/MainThread.cpp:
(WTF::ensureOnMainRunLoop): Added. For use in cases where we want to be more
efficient, and synchronous, when already on the main run loop, but we can do
the work asynchronously when called and not on the main run loop.
- wtf/MainThread.h: Added ensureOnMainRunLoop.
- 11:27 AM Changeset in webkit [274226] by
-
- 1 copy in tags/Safari-612.1.6.2
Tag Safari-612.1.6.2.
- 11:16 AM Changeset in webkit [274225] by
-
- 2 edits in trunk/LayoutTests
[ macOS wk2 ] imported/w3c/web-platform-tests/html/semantics/embedded-content/media-elements/media_fragment_seek.html is a flakey text failure
https://bugs.webkit.org/show_bug.cgi?id=223014
Unreviewed test gardening.
- platform/mac-wk2/TestExpectations: Marking test as Pass Fail, until it can be fixed.
- 11:11 AM Changeset in webkit [274224] by
-
- 2 edits in branches/safari-612.1.6-branch/Source/WebKit
Cherry-pick r274129. rdar://problem/75163359
Regression(r273875): Potential over-release in WKRemoteObjectCoder's decodeObjCObject()
https://bugs.webkit.org/show_bug.cgi?id=222954
<rdar://75163359>
Reviewed by Darin Adler.
r273875 added an adoptNS() for the result of
[allocation initWithCoder:decoder]. This would be
fine in general, except that we call awakeAfterUsingCoder on the result right after. As per the
awakeAfterUsingCoder documentation [1], it may return the receiver or a new object. When it
returns a new object, it takes care of releasing the receiver. This is an issue for us here since
we were holding the receiver in a smart pointer.
[1] https://developer.apple.com/documentation/objectivec/nsobject/1417074-awakeafterusingcoder
- Shared/API/Cocoa/WKRemoteObjectCoder.mm: (decodeObjCObject):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@274129 268f45cc-cd09-0410-ab3c-d52691b4dbfc
- 11:09 AM Changeset in webkit [274223] by
-
- 8 edits in branches/safari-612.1.6-branch/Source
Versioning.
WebKit-7612.1.6.2
- 11:06 AM Changeset in webkit [274222] by
-
- 1 copy in tags/Safari-612.1.5.4
Tag Safari-612.1.5.4.
- 11:05 AM Changeset in webkit [274221] by
-
- 2 edits in trunk/Source/WebCore
Unreviewed, fix the internal build
- Modules/applepay/cocoa/PaymentMethodCocoa.mm:
(WebCore::convert):
- 10:59 AM Changeset in webkit [274220] by
-
- 2 edits in trunk/Tools
Adding Python type annotations to test_expectations.py
https://bugs.webkit.org/show_bug.cgi?id=222770
Reviewed by Jonathan Bedard.
- Scripts/webkitpy/layout_tests/models/test_expectations.py:
(ParseError.init):
(ParseError.str):
(ParseError.repr):
(TestExpectationWarning.init):
(TestExpectationParser):
(TestExpectationParser.init):
(TestExpectationParser.parse):
(TestExpectationParser.expectation_for_skipped_test):
(TestExpectationParser._parse_line):
(TestExpectationParser._parse_modifiers):
(TestExpectationParser._parse_expectations):
(TestExpectationParser._check_test_exists):
(TestExpectationParser._collect_matching_tests):
(TestExpectationParser._tokenize_line):
(TestExpectationLine):
(TestExpectationLine.init):
(TestExpectationLine.str):
(TestExpectationLine.is_invalid):
(TestExpectationLine.is_flaky):
(TestExpectationLine.expected_behavior):
(TestExpectationLine.create_passing_expectation):
(TestExpectationLine.to_string):
(TestExpectationLine._serialize_parsed_expectations):
(TestExpectationLine._serialize_parsed_modifiers):
(TestExpectationLine._format_line):
(TestExpectationsModel):
(TestExpectationsModel.init):
(TestExpectationsModel._dict_of_sets):
(TestExpectationsModel.get_test_set):
(TestExpectationsModel.get_test_set_for_keyword):
(TestExpectationsModel.get_tests_with_result_type):
(TestExpectationsModel.get_tests_with_timeline):
(TestExpectationsModel.get_modifiers):
(TestExpectationsModel.has_modifier):
(TestExpectationsModel.has_keyword):
(TestExpectationsModel.has_test):
(TestExpectationsModel.get_expectation_line):
(TestExpectationsModel.get_expectations):
(TestExpectationsModel.get_expectations_or_pass):
(TestExpectationsModel.expectations_to_string):
(TestExpectationsModel.get_expectations_string):
(TestExpectationsModel.expectation_to_string):
(TestExpectationsModel.add_expectation_line):
(TestExpectationsModel._add_test):
(TestExpectationsModel._clear_expectations_for_test):
(TestExpectationsModel._remove_from_sets):
(TestExpectationsModel._already_seen_better_match):
(TestExpectations):
(TestExpectations.expectation_from_string):
(TestExpectations.result_was_expected):
(TestExpectations.remove_pixel_failures):
(TestExpectations.remove_leak_failures):
(TestExpectations.has_pixel_failures):
(TestExpectations.suffixes_for_expectations):
(TestExpectations.init):
(TestExpectations.readable_filename_and_line_number):
(TestExpectations.parse_generic_expectations):
(TestExpectations.parse_default_port_expectations):
(TestExpectations.parse_override_expectations):
(TestExpectations.parse_all_expectations):
(TestExpectations.model):
(TestExpectations.get_rebaselining_failures):
(TestExpectations.filtered_expectations_for_test):
(TestExpectations.matches_an_expected_result):
(TestExpectations.is_rebaselining):
(TestExpectations._shorten_filename):
(TestExpectations._report_warnings):
(TestExpectations._process_tests_without_expectations):
(TestExpectations.has_warnings):
(TestExpectations.remove_configuration_from_test):
(TestExpectations.remove_rebaselined_tests):
(TestExpectations.remove_rebaselined_tests.without_rebaseline_modifier):
(TestExpectations._add_expectations):
(TestExpectations.add_skipped_tests):
(TestExpectations.list_to_string):
(TestExpectations.serialize):
(TestExpectations.nones_out):
- 10:31 AM Changeset in webkit [274219] by
-
- 2 edits in trunk/Tools
Mark myself as a committer.
Unreviewed.
Also claim I know about webkitpy.
- Scripts/webkitpy/common/config/contributors.json:
- 10:15 AM Changeset in webkit [274218] by
-
- 1 copy in tags/Safari-611.1.21.1.6
Tag Safari-611.1.21.1.6.
- 9:31 AM Changeset in webkit [274217] by
-
- 4 edits2 adds in trunk
Multi-column state propagation should follow containing block rules
https://bugs.webkit.org/show_bug.cgi?id=222932
<rdar://problem/74459411>
Reviewed by Antti Koivisto.
Source/WebCore:
When a renderer(A) gains multi-column context
- a special RenderMultiColumnFlow renderer is constructed
- it is then inserted under the original renderer(A) and
- all (A)'s descendants get moved under this newly constructed RenderMultiColumnFlow renderer.
At step #3 we update each descendants flow state by calling initializeFragmentedFlowStateOnInsertion().
This patch check if the out-of-flow descendant is really part of the multi-column flow and updates the state accordingly.
e.g
<div style="column-count: 2"><div><div id=child style="position: absolute"></div></div></div>
"child" is _not_ part of the multi-column subtree. child's containing block is an ancestor of the multi-column renderer.
<div style="column-count: 2"><div style="position: relative"><div id=child style="position: absolute"></div></div></div>
"child" _is_ part of the multi-column subtree. child's containing block is the relatively positioned renderer which is part of the multi-column flow.
Test: fast/multicol/state-propagation-over-out-of-flow-boundary.html
- rendering/RenderObject.cpp:
(WebCore::RenderObject::setFragmentedFlowStateIncludingDescendants):
(WebCore::RenderObject::initializeFragmentedFlowStateOnInsertion):
(WebCore::RenderObject::resetFragmentedFlowStateOnRemoval):
- rendering/RenderObject.h:
LayoutTests:
- fast/multicol/state-propagation-over-out-of-flow-boundary-expected.txt: Added.
- fast/multicol/state-propagation-over-out-of-flow-boundary.html: Added.
- 9:26 AM Changeset in webkit [274216] by
-
- 14 edits in trunk
[GTK] Reenable -fvisibility=hidden
https://bugs.webkit.org/show_bug.cgi?id=181916
Patch by Michael Catanzaro <Michael Catanzaro> on 2021-03-10
Reviewed by Don Olmstead.
.:
In non-DEVELOPER_MODE builds, we rely on a linker version script to hide symbols that we
don't want to export. Building with hidden visibility might seem redundant with this, but
actually building with hidden visibility has advantages anyway. See
https://gcc.gnu.org/wiki/Visibility.
Note that I'm not confident GTK port can safely use -fvisibility-inlines-hidden, since it's
split between two shared objects. Also, because GTK is split into two shared objects, GTK
needs to build bmalloc and WTF as CMake OBJECT libraries, which is effectively the same as
using -Wl,--whole-archive to prevent symbols from being prematurely stripped away.
P.S. Major credit to Don Olmstead, who did most of the work to make this possible, which has
already landed in previous patches.
- Source/cmake/OptionsGTK.cmake:
Source/JavaScriptCore:
We need to export the destructor of IsoHeapCellType.
- heap/IsoHeapCellType.cpp:
- heap/IsoHeapCellType.h:
Source/WebCore:
We need to export the destructor of EventTarget and the delete operator of
EventTargetWithInlineData. They are used in WebKitTestRunner.
- PlatformGTK.cmake:
- dom/EventTarget.cpp:
- dom/EventTarget.h:
Source/WTF:
We need to export WTF::filenameForDisplay.
- wtf/FileSystem.h:
Tools:
- TestWebKitAPI/PlatformGTK.cmake:
- TestWebKitAPI/glib/TestExpectations.json:
- 8:18 AM Changeset in webkit [274215] by
-
- 6 edits in trunk/Source
Logic for updating the text selection when dragging selection handles should account for image overlays
https://bugs.webkit.org/show_bug.cgi?id=223010
Reviewed by Tim Horton.
Source/WebCore:
Rename
shouldUpdateSelectionForMouseDragtoshouldExtendSelectionToTargetNode. See WebKit Changelog for more
details.
- html/HTMLElement.cpp:
(WebCore::HTMLElement::shouldExtendSelectionToTargetNode):
(WebCore::HTMLElement::shouldUpdateSelectionForMouseDrag): Deleted.
- html/HTMLElement.h:
- page/EventHandler.cpp:
(WebCore::EventHandler::updateSelectionForMouseDrag):
Source/WebKit:
Apply the same logic introduced in r272503 to iOS, when extending the selection by moving selection handles. In
the case where the hit-tested node is the image overlay container (as opposed to any text inside the container),
it's better avoid updating the selection, rather than extend the selection to the start of the image overlay.
- WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::rangeForPointInRootViewCoordinates):
- 7:49 AM Changeset in webkit [274214] by
-
- 6 edits in trunk/Tools
git-webkit should have an "info" command
https://bugs.webkit.org/show_bug.cgi?id=222846
<rdar://problem/75171053>
Reviewed by Ryosuke Niwa.
- Scripts/libraries/webkitscmpy/setup.py: Bump version.
- Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
- Scripts/libraries/webkitscmpy/webkitscmpy/program/init.py:
(main): Add Info command.
- Scripts/libraries/webkitscmpy/webkitscmpy/program/find.py:
(Info):
(Info.parser): Moved from Find.parser, exclude argument.
(Info.main): Moved from Find.main, add a default reference.
(Find):
(Find.parser): Invoke Info.parser.
(Find.main): Invoke Info.main with user's specified reference.
- Scripts/libraries/webkitscmpy/webkitscmpy/test/find_unittest.py:
- 6:57 AM Changeset in webkit [274213] by
-
- 3 edits in trunk/Source/WebKit
Do not send sandbox extensions to WebProcess if capture happens in GPUProcess
https://bugs.webkit.org/show_bug.cgi?id=222961
Reviewed by Eric Carlson.
In case capture does not happen in WebProcess, we do not need to send the tccd sandbox extension.
Ditto for camera/microphone sandbox extensions if capture happens in GPUProcess.
Manually tested.
- UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
(WebKit::c):
(WebKit::UserMediaPermissionRequestManagerProxy::finishGrantingRequest):
- UIProcess/UserMediaProcessManager.cpp:
(WebKit::UserMediaProcessManager::willCreateMediaStream):
- 6:53 AM Changeset in webkit [274212] by
-
- 2 edits in trunk/Source/WebCore
[Multi-column] Adjust the flow state of the descendants when going from not-inside-flow to inside-flow
https://bugs.webkit.org/show_bug.cgi?id=222987
Reviewed by Antti Koivisto.
Sometimes the flow state could change even when the renderer stays out-of-flow (e.g when going from fixed to absolute and
the (new)containing block is inside a multi-column flow).
- rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::normalizeTreeAfterStyleChange):
- 6:46 AM Changeset in webkit [274211] by
-
- 2 edits in trunk/Source/WebCore
Clean up the text boxes when the associated text renderer is detached from the tree
https://bugs.webkit.org/show_bug.cgi?id=223009
<rdar://74788950>
Reviewed by Antti Koivisto.
This is the case when the text renderer gets moved under a different block and the original block
becomes non-legacy based line layout.
The inline text boxes are normally cleaned up either when the associated renderer is destroyed
or during the subsequent layout when the legacy code invalidates the line.
However when we switch from legacy to modern line layout this invalidation never runs.
This patch ensures that the text boxes are destroyed soon after the renderer is detached.
- rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::detachFromRenderElement):
- 6:29 AM Changeset in webkit [274210] by
-
- 6 edits in trunk
[WPE][GTK] Introduce NeedsUnbrandedUserAgent quirk and use it for accounts.google.com, docs.google.com, and drive.google.com
https://bugs.webkit.org/show_bug.cgi?id=222978
Patch by Michael Catanzaro <Michael Catanzaro> on 2021-03-10
Reviewed by Carlos Garcia Campos.
Source/WebCore:
This is a follow-up to bug #222039. I simplified our Google user agent quirks too much in
that bug, breaking accounts.google.com, docs.google.com, and drive.google.com for clients
that set application name and version in the user agent. What we really need here is an
empty quirk in order to ensure our most boring standard user agent is used without any
application branding or customizations. But we no longer need to fake platform or browser,
as was required in the past.
Additionaly, clean up the code a bit. We shouldn't need to compute domain and baseDomain
many separate times, for instance. There's also no need to perform string operations to
add the WebKit version to the user agent, since the version has been frozen for several
years now and is likely to remain frozen indefinitely. Finally, remove some forgotten
leftovers of our Internet Explorer and Windows quirks that were previously used for Google
Docs.
- platform/UserAgentQuirks.cpp:
(WebCore::urlRequiresChromeBrowser):
(WebCore::urlRequiresFirefoxBrowser):
(WebCore::urlRequiresMacintoshPlatform):
(WebCore::urlRequiresUnbrandedUserAgent):
(WebCore::UserAgentQuirks::quirksForURL):
(WebCore::UserAgentQuirks::stringForQuirk):
(WebCore::isGoogle): Deleted.
(WebCore::urlRequiresLinuxDesktopPlatform): Deleted.
- platform/UserAgentQuirks.h:
- platform/glib/UserAgentGLib.cpp:
(WebCore::buildUserAgentString):
(WebCore::standardUserAgent):
(WebCore::standardUserAgentForURL):
(WebCore::versionForUAString): Deleted.
Tools:
- TestWebKitAPI/Tests/WebCore/UserAgentQuirks.cpp:
(TestWebKitAPI::assertUserAgentForURLHasEmptyQuirk):
(TestWebKitAPI::TEST):
(TestWebKitAPI::assertUserAgentForURLHasLinuxPlatformQuirk): Deleted.
- 4:52 AM Changeset in webkit [274209] by
-
- 3 edits in trunk/Tools
[build.webkit.org] Update RunJavaScriptCoreTests step for new buildbot
https://bugs.webkit.org/show_bug.cgi?id=223011
Reviewed by Dewei Zhu.
- CISupport/build-webkit-org/steps.py:
(RunJavaScriptCoreTests.start): Used logobserver.
(RunJavaScriptCoreTests.countFailures):
- CISupport/build-webkit-org/steps_unittest.py:
(TestRunJavaScriptCoreTests.test_success): Added unit-test.
(TestRunJavaScriptCoreTests.test_failure): Ditto.
- 3:56 AM Changeset in webkit [274208] by
-
- 9 edits in trunk
Unreviewed, reverting r274166.
https://bugs.webkit.org/show_bug.cgi?id=223024
Broke GTK Debug builds
Reverted changeset:
"[GTK] Reenable -fvisibility=hidden"
https://bugs.webkit.org/show_bug.cgi?id=181916
https://trac.webkit.org/changeset/274166
- 3:54 AM Changeset in webkit [274207] by
-
- 5 edits in trunk/Source/WebCore
Make RTCDataChannel use a ScriptExecutionContext instead of a Document
https://bugs.webkit.org/show_bug.cgi?id=222963
Reviewed by Eric Carlson.
As part of trying to transfer data channels to workers, this is a refactoring that replaces use of Document by use of ScriptExecutionContext.
No change of behavior.
- Modules/mediastream/RTCDataChannel.cpp:
(WebCore::RTCDataChannel::create):
(WebCore::RTCDataChannel::createMessageQueue):
(WebCore::RTCDataChannel::RTCDataChannel):
- Modules/mediastream/RTCDataChannel.h:
- fileapi/NetworkSendQueue.cpp:
(WebCore::NetworkSendQueue::NetworkSendQueue):
(WebCore::NetworkSendQueue::enqueue):
- fileapi/NetworkSendQueue.h:
- 3:52 AM Changeset in webkit [274206] by
-
- 5 edits4 adds in trunk
Remove getUserMedia denied requests if user grants a new getUserMedia request
https://bugs.webkit.org/show_bug.cgi?id=222962
<rdar://74805451>
Reviewed by Eric Carlson.
Source/WebKit:
A user may deny an audio getUserMedia request.
On user gesture, user may be reprompted, in which case user may grant access.
Before the patch, after these two getUserMedia calls, if the web page was trying to call getUserMedia without user gesture, it would fail.
With this patch, we remove the first denied request based on the second granted request.
This allows getUserMedia to be granted, even without a user gesture.
Tests: fast/mediastream/granted-denied-request-management1.html
fast/mediastream/granted-denied-request-management2.html
- UIProcess/UserMediaPermissionRequestManagerProxy.cpp:
(WebKit::UserMediaPermissionRequestManagerProxy::finishGrantingRequest):
(WebKit::isMatchingDeniedRequest):
(WebKit::UserMediaPermissionRequestManagerProxy::wasRequestDenied):
(WebKit::UserMediaPermissionRequestManagerProxy::updateStoredRequests):
(WebKit::UserMediaPermissionRequestManagerProxy::getRequestAction):
- UIProcess/UserMediaPermissionRequestManagerProxy.h:
LayoutTests:
- fast/mediastream/getUserMedia-deny-persistency5.html:
Update according new heuristic.
- fast/mediastream/granted-denied-request-management1-expected.txt: Added.
- fast/mediastream/granted-denied-request-management1.html: Added.
- fast/mediastream/granted-denied-request-management2-expected.txt: Added.
- fast/mediastream/granted-denied-request-management2.html: Added.
- 3:24 AM Changeset in webkit [274205] by
-
- 8 edits in trunk/Source/WebKit
Unreviewed, reverting r274186.
https://bugs.webkit.org/show_bug.cgi?id=223023
triggers an infinite network process launch loop in GTK
Reverted changeset:
"REGRESSION (r272376): [iOS] ASSERTION FAILED:
sessionID.isEphemeral() !path.isEmpty() in WebKit::NetworkProcess::swServerForSession"
https://bugs.webkit.org/show_bug.cgi?id=222713
https://trac.webkit.org/changeset/274186
- 1:44 AM Changeset in webkit [274204] by
-
- 1 copy in releases/WPE WebKit/webkit-2.31.90
WPE WebKit 2.31.90
- 12:19 AM Changeset in webkit [274203] by
-
- 2 edits in trunk/Source/WebCore
Release assertion failures under Editor::scanSelectionForTelephoneNumbers
https://bugs.webkit.org/show_bug.cgi?id=223016
<rdar://problem/73159921>
Reviewed by Ryosuke Niwa.
No new tests; speculative fix for a non-reproducible crash, which theoretically
has been avoided in a second way on trunk.
- editing/Editor.cpp:
(WebCore::extendSelection):
(WebCore::Editor::scanSelectionForTelephoneNumbers):
In r272777, Ryosuke discovered a case where FrameSelection::isRange()
can be true, but firstRange() is an invalid range; in testing, forcing
this to be the case reproduces the crash as reported.
While that change may have fixed the root cause of this crash, we don't
know that we've found all of the ways that one can get a orphaned
selection *into* FrameSelection, and want a less risky workaround for
this crash, so we'll also fix it in scanSelectionForTelephoneNumbers,
by null-checking the result of FrameSelection::firstRange().
Also null-check the result of extendSelection(), since I cannot prove for sure
that a valid range cannot become invalid in this method.