⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Timeline



Apr 17, 2022:

10:55 PM Changeset in webkit [292951] by Chris Dumez
  • 40 edits in trunk/Source

Leverage StringView in more places
https://bugs.webkit.org/show_bug.cgi?id=239426

Reviewed by Sam Weinig.

Leverage StringView in more places, to reduce the number of String allocations.

Source/WebCore:

  • Modules/applicationmanifest/ApplicationManifestParser.cpp:

(WebCore::ApplicationManifestParser::parseDisplay):
(WebCore::ApplicationManifestParser::parseIcons):

  • Modules/indexeddb/server/SQLiteIDBCursor.cpp:

(WebCore::IDBServer::SQLiteIDBCursor::createSQLiteStatement):

  • Modules/indexeddb/server/SQLiteIDBCursor.h:
  • Modules/webdatabase/Database.cpp:

(WebCore::setTextValueInDatabase):
(WebCore::retrieveTextResultFromDatabase):

  • accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:

(-[WebAccessibilityObjectWrapper determineIsAccessibilityElement]):
(appendStringToResult): Deleted.
(accessibleElementsForObjects): Deleted.
(rendererForView): Deleted.

  • css/parser/MediaQueryParser.h:

(WebCore::MediaQueryParser::MediaQueryData::setMediaType):

  • editing/Editor.cpp:

(WebCore::Editor::transpose):

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::debugRenderer const):

  • html/MediaFragmentURIParser.cpp:

(WebCore::collectFraction):
(WebCore::MediaFragmentURIParser::parseNPTTime):

  • html/StepRange.cpp:

(WebCore::StepRange::parseStep):

  • html/StepRange.h:
  • html/parser/HTMLParserIdioms.cpp:

(WebCore::parseToDecimalForNumberType):
(WebCore::parseToDoubleForNumberType):

  • html/parser/HTMLParserIdioms.h:
  • inspector/agents/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::setAttributesAsText):

  • layout/formattingContexts/inline/InlineItemsBuilder.cpp:

(WebCore::Layout::replaceNonPreservedNewLineCharactersAndAppend):

  • layout/integration/LayoutIntegrationCoverage.cpp:

(WebCore::LayoutIntegration::printTextForSubtree):

  • page/TextIndicator.cpp:

(WebCore::containsOnlyWhiteSpaceText):

  • platform/Decimal.cpp:

(WebCore::Decimal::fromString):

  • platform/Decimal.h:
  • platform/network/CacheValidation.cpp:

(WebCore::parseCacheHeader):
(WebCore::parseCacheControlDirectives):

  • platform/network/HTTPParsers.cpp:

(WebCore::filenameFromHTTPContentDisposition):

  • platform/network/HTTPParsers.h:
  • platform/network/MIMEHeader.cpp:

(WebCore::retrieveKeyValuePairs):
(WebCore::MIMEHeader::parseContentTransferEncoding):

  • platform/network/MIMEHeader.h:
  • platform/network/ParsedContentType.cpp:

(WebCore::ParsedContentType::setContentType):

  • platform/network/ResourceResponseBase.cpp:

(WebCore::ResourceResponseBase::isAttachment const):
(WebCore::ResourceResponseBase::isAttachmentWithFilename const):

  • platform/network/curl/ResourceResponseCurl.cpp:

(WebCore::ResourceResponse::platformSuggestedFilename const):

  • platform/sql/SQLiteDatabase.cpp:

(WebCore::SQLiteDatabase::executeCommandSlow):
(WebCore::SQLiteDatabase::clearAllTables):
(WebCore::SQLiteDatabase::prepareStatementSlow):
(WebCore::SQLiteDatabase::prepareHeapStatementSlow):

  • platform/sql/SQLiteDatabase.h:
  • platform/xr/PlatformXR.h:

(PlatformXR::parseSessionFeatureDescriptor):

  • svg/SVGAnimationElement.cpp:

(WebCore::parseKeyTimes):
(WebCore::SVGAnimationElement::parseAttribute):

Source/WebKit:

  • WebProcess/WebPage/Cocoa/WebPageCocoa.mm:

(WebKit::WebPage::dictionaryPopupInfoForRange):

Source/WebKitLegacy/mac:

  • WebView/WebImmediateActionController.mm:

(+[WebImmediateActionController _dictionaryPopupInfoForRange:inFrame:withLookupOptions:indicatorOptions:transition:]):

Source/WTF:

  • wtf/text/StringImpl.cpp:
  • wtf/text/StringImpl.h:

(WTF::isNotSpaceOrNewline):

  • wtf/text/WTFString.h:
2:52 PM Changeset in webkit [292950] by mark.lam@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Harden JSObject::setPrototypeOf.
https://bugs.webkit.org/show_bug.cgi?id=239440

Reviewed by Yusuke Suzuki.

  • runtime/JSObject.cpp:

(JSC::JSObject::setPrototypeDirect):
(JSC::JSObject::setPrototypeWithCycleCheck):

  • runtime/JSObject.h:
  • runtime/ObjectConstructor.cpp:

(JSC::objectConstructorSetPrototypeOf):

2:01 PM Changeset in webkit [292949] by Lauro Moura
  • 5 edits in trunk/Source/WebCore

Unreviewed, non-unified build fixes after 249632@main
https://bugs.webkit.org/show_bug.cgi?id=239436

  • workers/DedicatedWorkerThread.cpp:
  • workers/WorkerGlobalScope.cpp:
  • workers/WorkerScriptLoader.cpp:
  • workers/service/ServiceWorkerClientData.cpp:
6:32 AM Changeset in webkit [292948] by Alan Bujtas
  • 2 edits in trunk/Source/WebCore

RenderDeprecatedFlexibleBox::applyLineClamp should use size_t
https://bugs.webkit.org/show_bug.cgi?id=239389

Reviewed by Darin Adler.

Use size_t consistently in applyLineClamp.
While LineClampValue is int based, it can also be a percent type which expands the clamping range to size_t.

getHeightForLineCount -> use size_t and drop the magic -1.
heightForLineCount -> return LayoutUnit instead of int.

  • rendering/RenderDeprecatedFlexibleBox.cpp:

(WebCore::getHeightForLineCount):
(WebCore::heightForLineCount):
(WebCore::RenderDeprecatedFlexibleBox::applyLineClamp):

1:08 AM Changeset in webkit [292947] by rniwa@webkit.org
  • 13 edits
    3 adds in trunk

Make release assertion in Document::updateLayout more precise for FrameSelection::setSelection
https://bugs.webkit.org/show_bug.cgi?id=239431

Reviewed by Alan Bujtas.

Source/WebCore:

Avoid the assertion failure by allowing no-op layout updates within FrameSelection::setSelection.

To do this, this patch introduces a new RAII object, UpToDateLayoutScope, which denotes when when the layout
is up-to-date and therefore does not require a new layout update. When this scope exists in the stack frame,
we allow calls to Document::updateLayout even inside ScriptDisallowedScope. We also assert that nobody attempts
to schedule a new style resolution or layout when this object exists.

Test: fast/forms/textarea-selection-update-during-DOMNodeRemoved-crash.html

  • WebCore.xcodeproj/project.pbxproj:
  • dom/Document.cpp:

(WebCore::Document::scheduleStyleRecalc):
(WebCore::Document::updateLayout):

  • dom/Document.h:

(WebCore::Document::upToDateLayoutScopeCount const):
(WebCore::Document::incrementUpToDateLayoutScopeCount):
(WebCore::Document::decrementUpToDateLayoutScopeCount):

  • editing/FrameSelection.cpp:

(WebCore::FrameSelection::setSelection):

  • page/FrameViewLayoutContext.cpp:

(WebCore::FrameViewLayoutContext::scheduleLayout):

  • rendering/RenderObject.h:

(WebCore::RenderObject::isSetNeedsLayoutForbidden const):

  • rendering/UpToDateLayoutScope.h: Added.

(WebCore::UpToDateLayoutScope::UpToDateLayoutScope):
(WebCore::UpToDateLayoutScope::~UpToDateLayoutScope):
(WebCore::UpToDateLayoutScope::scopeIfLayoutIsUpToUpdate):
(WebCore::UpToDateLayoutScope::needsLayout):

LayoutTests:

Add a regression test, and fix existing accessibility tests which were mutating DOM inside setSelection
via should* functions. In production, this will never happen since accessibility notification will be sent
to UI process asynchronously and accesssibility code won't try to mutate DOM synchronously.

  • accessibility/mac/focus-setting-selection-syncronizing-not-clearing-expected.txt: Rebaselined.
  • accessibility/mac/focus-setting-selection-syncronizing-not-clearing.html: Delay DOM mutations in should*

until the notification is over.

  • accessibility/mac/selection-change-userinfo.html: Ditto.
  • accessibility/mac/selection-sync.html: Ditto.
  • accessibility/mac/selection-value-changes-for-aria-textbox.html: Ditto.
  • fast/forms/textarea-selection-update-during-DOMNodeRemoved-crash-expected.txt: Added.
  • fast/forms/textarea-selection-update-during-DOMNodeRemoved-crash.html: Added.

Apr 16, 2022:

9:22 PM Changeset in webkit [292946] by mark.lam@apple.com
  • 2 edits in trunk/Source/JavaScriptCore

Fix a deadlock in VMTraps.
https://bugs.webkit.org/show_bug.cgi?id=239421
<rdar://problem/91851592>

Reviewed by Michael Saboff.

The sampling profiler first acquires the codeBlockSet lock followed by the ThreadSuspendLocker.
VMTraps, on the other hand, first acquires the ThreadSuspendLocker followed by the
codeBlockSet lock. As a result, VMTraps can deadlock with the Sampling Profiler
thread, and leave the mutator in a suspended state, or forever blocked on the
codeBlockSet lock.

This was discovered while running the stress/has-indexed-property-with-worsening-array-mode.js.ftl-no-cjit-validate-sampling-profiler
test on a Debug build of jsc on an M1 MBP. Since it requires a race condition to
reproduce, reproducibility is not always reliable.

  • runtime/VMTraps.cpp:

(JSC::VMTraps::tryInstallTrapBreakpoints):

8:56 PM Changeset in webkit [292945] by Chris Dumez
  • 22 edits in trunk

Drop String::truncate() and use String::left() instead
https://bugs.webkit.org/show_bug.cgi?id=239412

Reviewed by Darin Adler.

Source/WebCore:

  • Modules/highlight/AppHighlightStorage.cpp:

(WebCore::createAppHighlightRangeData):

  • dom/FragmentDirectiveParser.cpp:

(WebCore::FragmentDirectiveParser::parseFragmentDirective):

  • html/HTMLImageElement.cpp:

(WebCore::HTMLImageElement::bestFitSourceFromPictureElement):

  • html/TextFieldInputType.cpp:

(WebCore::TextFieldInputType::handleBeforeTextInsertedEvent):

  • loader/FTPDirectoryParser.h:

(WebCore::ListResult::clear):

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::didBeginDocument):

  • page/CaptionUserPreferencesMediaAF.cpp:

(WebCore::languageIdentifier):

  • platform/graphics/avfoundation/objc/AVAssetTrackUtilities.mm:

(WebCore::contentTypesToCodecs):

  • platform/text/hyphen/HyphenationLibHyphen.cpp:

(WebCore::scanDirectoryForDictionaries):

  • platform/win/ClipboardUtilitiesWin.cpp:

(WebCore::extractURL):

Source/WebKit:

  • Shared/mac/AuxiliaryProcessMac.mm:

(WebKit::getUserDirectorySuffix):

Source/WebKitLegacy/win:

  • WebDownloadCFNet.cpp:

(WebDownload::initToResumeWithBundle):

Source/WTF:

String::truncate() and String::left() have identical behavior. The only difference is that truncate()
modifies the String in place (which is a bit confusing), while left() returns a new String, without
modifying the original. To simplify our API, I am dropping String::truncate().

  • wtf/text/WTFString.cpp:

(WTF::String::truncate): Deleted.

  • wtf/text/WTFString.h:
  • wtf/unix/LanguageUnix.cpp:

(WTF::platformLanguage):

  • wtf/win/LanguageWin.cpp:

(WTF::localeInfo):

Tools:

  • WebKitTestRunner/InjectedBundle/InjectedBundlePage.cpp:

(WTR::InjectedBundlePage::willAddMessageToConsole):

8:13 PM Changeset in webkit [292944] by Wenson Hsieh
  • 5 edits in trunk

[macOS] Image controls are editable and prevent drops in editable web views
https://bugs.webkit.org/show_bug.cgi?id=239423
rdar://81027082

Reviewed by Darin Adler.

Source/WebCore:

Adjust the UA stylesheet for image controls (i.e., the services dropdown menu button) such that:

  1. The container for image controls is non-editable, and:
  2. The container above the button (which encompasses the bounds of the host image) ignores hit-testing.

This ensures that we're able to handle a drop over an image with image controls in an editable web view, by
inserting the dropped content before or after the image element (as opposed to either inserting it inside the
shadow root of the image, or not handling the drop via editing at all).

Test: WKAttachmentTestsMac.DropImageOverImageWithControls

  • dom/mac/ImageControlsMac.cpp:

(WebCore::ImageControlsMac::createImageControls):

  • html/shadow/mac/imageControlsMac.css:

(#if defined(ENABLE_SERVICE_CONTROLS) && ENABLE_SERVICE_CONTROLS):
(button#image-controls-button):

Make the contents of the image controls container non-selectable, and also avoid hit-testing over the container.

(:host(:hover) button#image-controls-button):
(div#image-controls button#image-controls-button): Deleted.

Ensure that the services menu button itself can still be activated by setting pointer-events: auto; when the
host element (i.e. the img) is hovered. It's important that we use the host element's hover state instead of
the containing #image-controls, since this container now has pointer-events: none;.

These changes make it still possible to reveal and interact with the services menu button, but allows
drag-and-drop to avoid hit-testing into shadow root content for an image with controls.

(div#image-controls:hover button#image-controls-button): Deleted.

Tools:

Add a new API test to exercise the change.

  • TestWebKitAPI/Tests/WebKitCocoa/WKAttachmentTests.mm:

(TestWebKitAPI::TEST):

3:59 PM Changeset in webkit [292943] by Chris Dumez
  • 4 edits in trunk/Source/WebCore

Optimize id matching in AccessibilityObject::ariaElementsReferencedByAttribute()
https://bugs.webkit.org/show_bug.cgi?id=239406
<rdar://problem/91829358>

Reviewed by Darin Adler.

For every element in the DOM tree, the function would get the value of ones of its attributes,
then construct a SpaceSplitString (which would tokenize and atomize every space-separated
component in the value), and finally see if the SpaceSplitString contains the id we're looking
for. This was unnecessarily expensive.

This patch revives SpaceSplitString::spaceSplitStringContainsValue() which was unused and makes
it work with a StringView input instead of only a const char*/LChar*. We now use this function
inside AccessibilityObject::ariaElementsReferencedByAttribute() to avoid the construction of
a SpaceSplitString. spaceSplitStringContainsValue() simply iterates the string until it finds
an HTML space, then compare the chunk of characters with the provided StringView. If it matches,
it returns early, otherwise, it keeps searching till the end of the String.

  • accessibility/AccessibilityObject.cpp:

(WebCore::AccessibilityObject::ariaElementsReferencedByAttribute const):

  • dom/SpaceSplitString.cpp:

(WebCore::tokenizeSpaceSplitString):
(WebCore::TokenIsEqualToCharactersTokenProcessor::TokenIsEqualToCharactersTokenProcessor):
(WebCore::TokenIsEqualToCharactersTokenProcessor::processToken):
(WebCore::spaceSplitStringContainsValueInternal):
(WebCore::SpaceSplitString::spaceSplitStringContainsValue):
(WebCore::TokenIsEqualToCStringTokenProcessor::TokenIsEqualToCStringTokenProcessor): Deleted.
(WebCore::TokenIsEqualToCStringTokenProcessor::processToken): Deleted.
(WebCore::TokenIsEqualToCStringTokenProcessor::referenceStringWasFound const): Deleted.

  • dom/SpaceSplitString.h:

(WebCore::SpaceSplitString::spaceSplitStringContainsValue): Deleted.

1:31 PM Changeset in webkit [292942] by Chris Dumez
  • 10 edits in trunk/Source

Replace complex String::insert() with a simplified makeStringByInserting() free function
https://bugs.webkit.org/show_bug.cgi?id=239370

Reviewed by Darin Adler.

Source/WebCore:

  • Modules/mediasource/MediaSource.cpp:

(WebCore::addVP9FullRangeVideoFlagToContentType):

  • dom/CharacterData.cpp:

(WebCore::CharacterData::insertData):
(WebCore::CharacterData::replaceData):

  • html/HTMLTextFormControlElement.cpp:

(WebCore::HTMLTextFormControlElement::setRangeText):

  • platform/network/DataURLDecoder.cpp:

(WebCore::DataURLDecoder::DecodeTask::process):

  • platform/win/PasteboardWin.cpp:

(WebCore::createGlobalImageFileDescriptor):

Source/WTF:

  • wtf/text/WTFString.cpp:

(WTF::makeStringByInserting):
(WTF::String::insert): Deleted.
(WTF::String::append): Deleted.

  • wtf/text/WTFString.h:
12:28 PM Changeset in webkit [292941] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebGPU

[WebGPU] Fix the Big Sur build
https://bugs.webkit.org/show_bug.cgi?id=239422

Unreviewed.

HardwareLimits.mm:338:23: error: constexpr function never produces a constant expression [-Winvalid-constexpr]

  • WebGPU/HardwareLimits.mm:

(WebGPU::checkLimits):

Apr 15, 2022:

9:47 PM Changeset in webkit [292940] by mmaxfield@apple.com
  • 13 edits
    1 copy
    1 add in trunk/Source

[WebGPU] Implement hardware limits
https://bugs.webkit.org/show_bug.cgi?id=239377

Reviewed by Darin Adler.

Source/WebCore/PAL:

This patch adds support for "limits" as described in https://gpuweb.github.io/gpuweb/#limits.
Various operations query the limits of the device to know whether the requested operation is
within range. E.g. if content tries to make a texture too big, this is how we catch it ahead of
time.

  • pal/graphics/WebGPU/Impl/WebGPUAdapterImpl.cpp:

(PAL::WebGPU::AdapterImpl::requestDevice):

Source/WebGPU:

We gather the values of the limits from the Metal Feature Set Tables
at https://developer.apple.com/metal/Metal-Feature-Set-Tables.pdf.

There are no limit tables for the Common families, so we use Apple
and Mac families instead.

Test: webgpu/api/validation/createTexture

  • WebGPU.xcodeproj/project.pbxproj:
  • WebGPU/Adapter.h:

(WebGPU::Adapter::create):

  • WebGPU/Adapter.mm:

(WebGPU::Adapter::Adapter):
(WebGPU::Adapter::requestDevice):
(WebGPU::Adapter::requestInvalidDevice):
(wgpuAdapterRequestInvalidDeviceWithBlock):
(WebGPU::deviceMeetsRequiredLimits): Deleted.

  • WebGPU/Device.h:
  • WebGPU/Device.mm:

(WebGPU::Device::create):
(WebGPU::Device::Device):

  • WebGPU/HardwareLimits.h: Copied from Source/WebGPU/WebGPU/Adapter.h.
  • WebGPU/HardwareLimits.mm: Added.

(WebGPU::apple3):
(WebGPU::apple4):
(WebGPU::apple5):
(WebGPU::apple6):
(WebGPU::apple7):
(WebGPU::mac2):
(WebGPU::rawLimits):
(WebGPU::checkLimits):
(WebGPU::limits):
(WebGPU::isValid):
(WebGPU::anyLimitIsBetterThan):

  • WebGPU/Instance.mm:

(WebGPU::Instance::requestAdapter):

  • WebGPU/Texture.mm:

(WebGPU::Device::validateCreateTexture):
(WebGPU::Texture::createView):

  • WebGPU/WebGPUExt.h:

Source/WTF:

Add missing #include.

  • wtf/PageBlock.h:
9:44 PM Changeset in webkit [292939] by Chris Dumez
  • 58 edits in trunk/Source

Leverage StringView in more places to avoid some String allocations
https://bugs.webkit.org/show_bug.cgi?id=239356

Reviewed by Darin Adler.

Source/JavaScriptCore:

  • inspector/ContentSearchUtilities.cpp:

(Inspector::ContentSearchUtilities::getRegularExpressionMatchesByLines):
(Inspector::ContentSearchUtilities::findMagicComment):

  • runtime/ExceptionHelpers.cpp:

(JSC::invalidParameterInSourceAppender):
(JSC::invalidParameterInstanceofSourceAppender):

  • runtime/IntlDateTimeFormat.cpp:

(JSC::IntlDateTimeFormat::formatToParts const):
(JSC::IntlDateTimeFormat::formatRangeToParts):

  • runtime/IntlListFormat.cpp:

(JSC::IntlListFormat::formatToParts const):

  • runtime/IntlNumberFormat.cpp:

(JSC::IntlNumberFormat::formatRangeToPartsInternal):

  • tools/FunctionOverrides.cpp:

(JSC::initializeOverrideInfo):

Source/WebCore:

  • Modules/fetch/FetchBodyConsumer.cpp:

(WebCore::FetchBodyConsumer::packageFormData):

  • Modules/mediastream/libwebrtc/LibWebRTCRtpTransceiverBackend.cpp:

(WebCore::toRtpCodecCapability):

  • Modules/model-element/scenekit/SceneKitModelLoader.mm:

(WebCore::mimeTypeUtilizingFileExtensionOverridingForLocalFiles):

  • Modules/plugins/PluginReplacement.h:

(WebCore::ReplacementPlugin::supportsFileExtension const):

  • Modules/plugins/YouTubePluginReplacement.cpp:

(WebCore::YouTubePluginReplacement::supportsFileExtension):

  • Modules/plugins/YouTubePluginReplacement.h:
  • animation/KeyframeEffect.cpp:

(WebCore::KeyframeEffect::setPseudoElement):

  • css/ContainerQueryParser.cpp:

(WebCore::ContainerQueryParser::consumePlainSizeFeature):

  • css/parser/CSSSelectorParser.cpp:

(WebCore::consumeANPlusB):

  • dom/SecurityContext.cpp:

(WebCore::SecurityContext::parseSandboxPolicy):

  • dom/SecurityContext.h:
  • fileapi/ThreadableBlobRegistry.cpp:

(WebCore::isBlobURLContainsNullOrigin):

  • html/DOMTokenList.cpp:

(WebCore::DOMTokenList::updateTokensFromAttributeValue):

  • html/DOMTokenList.h:
  • html/HTMLMapElement.cpp:

(WebCore::HTMLMapElement::parseAttribute):

  • html/HTMLPlugInElement.cpp:

(WebCore::pluginReplacementForType):

  • html/track/WebVTTParser.cpp:

(WebCore::WebVTTParser::checkAndCreateRegion):
(WebCore::WebVTTParser::checkAndStoreRegion):
(WebCore::WebVTTParser::checkStyleSheet):
(WebCore::WebVTTParser::checkAndStoreStyleSheet):

  • html/track/WebVTTParser.h:
  • inspector/InspectorStyleSheet.cpp:

(WebCore::StyleSheetHandler::observeProperty):
(WebCore::StyleSheetHandler::observeComment):

  • layout/formattingContexts/inline/InlineLineBuilder.cpp:

(WebCore::Layout::toString):

  • layout/formattingContexts/inline/display/InlineDisplayContentBuilder.cpp:

(WebCore::Layout::InlineDisplayContentBuilder::appendTextDisplayBox):

  • layout/layouttree/LayoutInlineTextBox.h:

(WebCore::Layout::InlineTextBox::content const):

  • loader/appcache/ApplicationCacheStorage.cpp:

(WebCore::ApplicationCacheStorage::store):
(WebCore::ApplicationCacheStorage::writeDataToUniqueFileInDirectory):

  • loader/appcache/ApplicationCacheStorage.h:
  • loader/cache/CachedSVGFont.cpp:

(WebCore::CachedSVGFont::getSVGFontById const):
(WebCore::CachedSVGFont::maybeInitializeExternalSVGFontElement):

  • loader/cache/CachedSVGFont.h:
  • page/Location.cpp:

(WebCore::Location::setHash):

  • page/Page.cpp:

(WebCore::Page::userStyleSheetLocationChanged):

  • page/UserContentURLPattern.cpp:

(WebCore::UserContentURLPattern::parse):

  • page/UserContentURLPattern.h:

(WebCore::UserContentURLPattern::UserContentURLPattern):

  • platform/MIMETypeRegistry.cpp:

(WebCore::typesForCommonExtension):
(WebCore::MIMETypeRegistry::mediaMIMETypeForExtension):

  • platform/MIMETypeRegistry.h:
  • platform/cocoa/DragImageCocoa.mm:

(WebCore::createDragImageIconForCachedImageFilename):

  • platform/graphics/MediaPlayer.cpp:

(WebCore::MediaPlayer::load):

  • platform/graphics/angle/GraphicsContextGLANGLE.cpp:

(WebCore::GraphicsContextGLANGLE::getUnmangledInfoLog):

  • platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:

(WebCore::InbandTextTrackPrivateAVF::processCueAttributes):

  • platform/graphics/opengl/GraphicsContextGLOpenGL.cpp:

(WebCore::GraphicsContextGLOpenGL::getUnmangledInfoLog):

  • platform/network/HTTPParsers.cpp:

(WebCore::parseStructuredFieldValue):
(WebCore::parseRange):

  • platform/network/HTTPParsers.h:
  • platform/network/MIMEHeader.cpp:

(WebCore::retrieveKeyValuePairs):

  • platform/network/ParsedContentType.cpp:

(WebCore::ParsedContentType::setContentType):

  • platform/network/ParsedContentType.h:
  • rendering/RenderListMarker.cpp:

(WebCore::RenderListMarker::textRun const):

Source/WebKit:

  • Platform/cocoa/ImageAnalysisUtilities.mm:

(WebKit::makeTextRecognitionResult):

  • UIProcess/Cocoa/MediaPermissionUtilities.mm:

(WebKit::visibleDomain):

  • WebProcess/Plugins/PluginView.cpp:

(WebKit::PluginView::performJavaScriptURLRequest):

Source/WebKitLegacy/mac:

  • Misc/WebUserContentURLPattern.mm:

(-[WebUserContentURLPattern initWithPatternString:]):

8:41 PM Changeset in webkit [292938] by Chris Dumez
  • 23 edits in trunk/Source/WebCore

Rename WebCore::webCoreBuiltinNames() to WebCore::builtinNames()
https://bugs.webkit.org/show_bug.cgi?id=239408

Reviewed by Darin Adler.

  • bindings/js/JSDOMGlobalObject.cpp:

(WebCore::JSDOMGlobalObject::addBuiltinGlobals):

  • bindings/js/JSDOMMapLike.cpp:

(WebCore::getBackingMap):

  • bindings/js/JSDOMSetLike.cpp:

(WebCore::getBackingSet):

  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::initStaticGlobals):
(WebCore::JSDOMWindowBase::finishCreation):
(WebCore::JSDOMWindowBase::updateDocument):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::jsDOMWindowGetOwnPropertySlotRestrictedAccess):
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::put):
(WebCore::addCrossOriginPropertyNames):
(WebCore::JSDOMWindow::defineOwnProperty):
(WebCore::JSDOMWindow::setOpener):
(WebCore::JSDOMWindow::openDatabase const):
(WebCore::JSDOMWindow::setOpenDatabase):

  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::handleEvent):

  • bindings/js/JSLocationCustom.cpp:

(WebCore::getOwnPropertySlotCommon):
(WebCore::JSLocation::put):

  • bindings/js/JSRemoteDOMWindowCustom.cpp:

(WebCore::JSRemoteDOMWindow::put):

  • bindings/js/ReadableStream.cpp:

(WebCore::ReadableStream::create):
(WebCore::ReadableStream::lock):

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::setupModuleScriptHandlers):

  • bindings/js/ScriptModuleLoader.cpp:

(WebCore::rejectToPropagateNetworkError):
(WebCore::rejectWithFetchError):

  • bindings/js/WebCoreJSClientData.h:

(WebCore::builtinNames):
(WebCore::webCoreBuiltinNames): Deleted.

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • bindings/scripts/test/JS/JSDOMWindow.cpp:

(WebCore::JSDOMWindow::finishCreation):

  • bindings/scripts/test/JS/JSTestConditionallyReadWrite.cpp:

(WebCore::JSTestConditionallyReadWritePrototype::finishCreation):
(WebCore::JSTestConditionallyReadWrite::finishCreation):

  • bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:

(WebCore::JSTestEnabledBySetting::finishCreation):

  • bindings/scripts/test/JS/JSTestEnabledForContext.cpp:

(WebCore::JSTestEnabledForContext::finishCreation):

  • bindings/scripts/test/JS/JSTestGlobalObject.cpp:

(WebCore::JSTestGlobalObject::finishCreation):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::JSTestObjPrototype::finishCreation):

  • html/HTMLMediaElement.cpp:

(WebCore::controllerJSValue):
(WebCore::HTMLMediaElement::didAddUserAgentShadowRoot):

  • testing/Internals.cpp:

(WebCore::Internals::cloneArrayBuffer):

  • workers/WorkerOrWorkletScriptController.cpp:

(WebCore::WorkerOrWorkletScriptController::loadModuleSynchronously):
(WebCore::WorkerOrWorkletScriptController::loadAndEvaluateModule):

6:59 PM Changeset in webkit [292937] by Jonathan Bedard
  • 9 edits in trunk

[git-webkit] Allow projects to declare alternate remotes
https://bugs.webkit.org/show_bug.cgi?id=239261
<rdar://problem/91654752>

Reviewed by Dewei Zhu.

  • Tools/Scripts/libraries/webkitscmpy/setup.py: Bump verison.
  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py:

(Git.remote): Move logic to remote.Scm.from_url.

  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/setup.py:

(Setup.github): Allow user to specify trailing remote name.
(Setup._add_remote): Add a remote or modify exising remote.
(Setup._fork_remote): Determine a remote url based on origin url.
(Setup.git): If the project declares remotes, check if the user is using the righ origin. Warn them
if they are not. Check if the user has access to alternate remotes, if they do, add those remotes
and create forks for them. Fetch all fork remotes. Do not fork repository if origin does not match
declared origin.

  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/remote/scm.py:

(Scm.from_url): Moved logic from local.Git.remote.

  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/test/setup_unittest.py:
  • metadata/git_config_extension: Add expected remotes.

Canonical link: https://commits.webkit.org/249702@main

6:16 PM Changeset in webkit [292936] by Jonathan Bedard
  • 2 edits in trunk/Websites/webkit.org

[webkit.org] Remove leading r from archive revisions (Follow-up fix)
https://bugs.webkit.org/show_bug.cgi?id=239322
<rdar://problem/91735590>

Reviewed by Alexey Proskuryakov.

  • Websites/webkit.org/wp-content/themes/webkit/build-archives.php:

Identifiers are strings, not integers. Use new v3 endpoint.

Canonical link: https://commits.webkit.org/249700@main

6:16 PM Changeset in webkit [292935] by Wenson Hsieh
  • 4 edits in trunk/Source/WebKit

Add a helper function to perform additional setup on VKCImageAnalysis(Interaction|OverlayView)
https://bugs.webkit.org/show_bug.cgi?id=239391
rdar://91466567

Reviewed by Tim Horton.

Add a helper function to ImageAnalysisUtilities, and call it on both iOS (WKContentView) and macOS
(WebViewImpl).

  • Platform/cocoa/ImageAnalysisUtilities.h:
  • UIProcess/Cocoa/WebViewImpl.mm:

(WebKit::WebViewImpl::installImageAnalysisOverlayView):

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _singleTapIdentified:]):
(-[WKContentView installImageAnalysisInteraction:]):
(-[WKContentView imageAnalysisInteraction:shouldBeginAtPoint:forAnalysisType:]):

Add support for toggling the Live Text overlay when tapping on the image analysis button owned by the
interaction. This custom handling is necessary, since the synthetic tap gesture recognizer does not recognize
simultaneously alongside the tap gesture for VisionKit's UIButton, and we can't (easily) grab VisionKit's
button's tap gesture to add failure requirements to our synthetic tap gesture.

6:11 PM Changeset in webkit [292934] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WTF

IGNORE_WARNINGS_BEGIN should not warn about unrecognized warnings
https://bugs.webkit.org/show_bug.cgi?id=239344

Patch by Michael Catanzaro <Michael Catanzaro> on 2022-04-15
Reviewed by Darin Adler.

If the compiler does not support has_warning(), then let's also
suppress -Wpragmas to avoid warnings about unrecognized warnings.

Let's make a couple drive-by cleanups as well. Notably,
IGNORE_WARNINGS_BEGIN_IMPL_ is unused and can be removed.

  • Source/WTF/wtf/Compiler.h:

Canonical link: https://commits.webkit.org/249699@main

5:49 PM Changeset in webkit [292933] by Matteo Flores
  • 7 edits in trunk/LayoutTests

REBASLINE: [ Monterey wk2 ] 7 /paymentrequest/* tests are constant text failures https://bugs.webkit.org/show_bug.cgi?id=238908 Unreviewed rebasline & test gardening. * http/tests/paymentrequest/updateWith-shippingOptions.https-expected.txt: * platform/mac-wk2/TestExpectations: * platform/ios-wk2/TestExpectations:

5:18 PM Changeset in webkit [292932] by Karl Rackler
  • 2 edits in trunk/LayoutTests

[ Monterey wk2 ] WebGL conformance tests are a flaky time out
Adding additional tests
https://bugs.webkit.org/show_bug.cgi?id=239388

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
5:11 PM Changeset in webkit [292931] by Karl Rackler
  • 2 edits in trunk/LayoutTests

[ Monterey wk2 debug ] WebGL conformance tests are a flaky time out
Adding additional tests
https://bugs.webkit.org/show_bug.cgi?id=239386

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
5:07 PM Changeset in webkit [292930] by Justin Michaud
  • 2 edits in trunk

Add GitHub info to contributors.json
https://bugs.webkit.org/show_bug.cgi?id=239410

Reviewed by Yusuke Suzuki.

  • metadata/contributors.json:
5:00 PM Changeset in webkit [292929] by ysuzuki@apple.com
  • 545 edits in trunk

[JSC] Remove VM& parameter from structure related code including jsDyamicCast
https://bugs.webkit.org/show_bug.cgi?id=239362

Reviewed by Darin Adler.

As structure lookup no longer requires VM&, we can remove bunch of VM& parameter from various methods: classInfo, structure, methodTable etc.
And it leads to removing VM& from jsDynamicCast. This is important since this makes it possible to incorporate the underlying mechanism of
WebCore downcast + jsDynamicCast. I like keeping jsDynamicCast name since it is clear that this is JSCell, but we can (1) unify the underlying
implementations and (2) add static_assert(std::base_v<T, JSCell>) in jsDynamicCast so that we can keep jsDynamicCast interface.
It also has a chance to avoid unnecessary load of VM& in various places.

We still keep JSXXX::toWrapped's VM& parameter since it is possible that we need VM& for querying wrapped one. Once we are confident that we no
longer need it even in the future, we will remove that too in a separate patch.

We also rename Structure::classInfo to Structure::classInfoForCells, and hiding Structure::classInfo function since JSCell::classInfo and
Structure::classInfoForCellsare different.

  • Tools/DumpRenderTree/TestRunner.cpp:

(setAudioResultCallback):
(TestRunner::setOpenPanelFilesMediaIcon):

  • Source/JavaScriptCore/API/APICallbackFunction.h:

(JSC::APICallbackFunction::constructImpl):

  • Source/JavaScriptCore/API/APICast.h:

(toJS):
(toJSForGC):

  • Source/JavaScriptCore/API/JSAPIGlobalObject.mm:

(JSC::JSAPIGlobalObject::moduleLoaderResolve):

  • Source/JavaScriptCore/API/JSCallbackConstructor.cpp:

(JSC::JSCallbackConstructor::finishCreation):

  • Source/JavaScriptCore/API/JSCallbackFunction.cpp:

(JSC::JSCallbackFunction::finishCreation):

  • Source/JavaScriptCore/API/JSCallbackObjectFunctions.h:

(JSC::JSCallbackObject<Parent>::asCallbackObject):
(JSC::JSCallbackObject<Parent>::finishCreation):
(JSC::JSCallbackObject<Parent>::init):
(JSC::JSCallbackObject<Parent>::getOwnPropertySlot):
(JSC::JSCallbackObject<Parent>::getOwnPropertySlotByIndex):
(JSC::JSCallbackObject<Parent>::customToPrimitive):
(JSC::JSCallbackObject<Parent>::staticFunctionGetterImpl):

  • Source/JavaScriptCore/API/JSContext.mm:

(-[JSContext evaluateJSScript:]):

  • Source/JavaScriptCore/API/JSContextRef.cpp:

(JSContextGetGlobalObject):
(JSGlobalContextSetUnhandledRejectionCallback):

  • Source/JavaScriptCore/API/JSObjectRef.cpp:

(JSObjectGetPrototype):
(JSObjectSetProperty):
(JSObjectSetPropertyForKey):
(JSObjectSetPropertyAtIndex):
(classInfoPrivate):
(JSObjectGetPrivate):
(JSObjectSetPrivate):
(JSObjectGetPrivateProperty):
(JSObjectSetPrivateProperty):
(JSObjectDeletePrivateProperty):
(JSObjectIsFunction):
(JSObjectCallAsFunction):
(JSObjectIsConstructor):
(JSObjectCallAsConstructor):
(JSObjectGetProxyTarget):

  • Source/JavaScriptCore/API/JSTypedArray.cpp:

(JSValueGetTypedArrayType):
(JSObjectMakeTypedArrayWithArrayBuffer):
(JSObjectMakeTypedArrayWithArrayBufferAndOffset):
(JSObjectGetTypedArrayBytesPtr):
(JSObjectGetTypedArrayLength):
(JSObjectGetTypedArrayByteLength):
(JSObjectGetTypedArrayByteOffset):
(JSObjectGetTypedArrayBuffer):
(JSObjectGetArrayBufferBytesPtr):
(JSObjectGetArrayBufferByteLength):

  • Source/JavaScriptCore/API/JSValue.mm:

(isDate):
(isArray):
(valueToObjectWithoutCopy):

  • Source/JavaScriptCore/API/JSValueRef.cpp:

(JSValueIsArray):
(JSValueIsDate):
(JSValueIsObjectOfClass):
(JSValueIsInstanceOfConstructor):

  • Source/JavaScriptCore/API/JSWeakObjectMapRefPrivate.cpp:
  • Source/JavaScriptCore/API/JSWrapperMap.mm:

(putNonEnumerable):
(copyMethodsToObject):
(tryUnwrapObjcObject):

  • Source/JavaScriptCore/API/ObjCCallbackFunction.h:
  • Source/JavaScriptCore/API/ObjCCallbackFunction.mm:

(tryUnwrapConstructor):

  • Source/JavaScriptCore/API/glib/JSCClass.cpp:

(isWrappedObject):

  • Source/JavaScriptCore/API/glib/JSCValue.cpp:

(jsc_value_object_define_property_data):
(jscValueObjectDefinePropertyAccessor):
(jsc_value_is_array_buffer):
(jsc_value_typed_array_get_type):

  • Source/JavaScriptCore/API/glib/JSCWrapperMap.cpp:

(JSC::WrapperMap::wrappedObject const):

  • Source/JavaScriptCore/API/tests/JSWrapperMapTests.mm:

(+[JSWrapperMapTests testStructureIdentity]):

  • Source/JavaScriptCore/bindings/ScriptFunctionCall.cpp:

(Deprecated::ScriptFunctionCall::call):

  • Source/JavaScriptCore/bindings/ScriptValue.cpp:

(Inspector::jsToInspectorValue):

  • Source/JavaScriptCore/bytecode/AccessCase.cpp:

(JSC::AccessCase::fromStructureStubInfo):
(JSC::AccessCase::generateImpl):

  • Source/JavaScriptCore/bytecode/AdaptiveInferredPropertyValueWatchpointBase.cpp:

(JSC::AdaptiveInferredPropertyValueWatchpointBase::install):

  • Source/JavaScriptCore/bytecode/ArrayProfile.cpp:

(JSC::ArrayProfile::observeIndexedRead):

  • Source/JavaScriptCore/bytecode/ArrayProfile.h:
  • Source/JavaScriptCore/bytecode/CallLinkStatus.cpp:

(JSC::CallLinkStatus::filter):

  • Source/JavaScriptCore/bytecode/CallLinkStatus.h:
  • Source/JavaScriptCore/bytecode/CallVariant.cpp:

(JSC::CallVariant::filter):

  • Source/JavaScriptCore/bytecode/CallVariant.h:

(JSC::CallVariant::internalFunction const):
(JSC::CallVariant::function const):
(JSC::CallVariant::isClosureCall const):
(JSC::CallVariant::executable const):
(JSC::CallVariant::functionExecutable const):
(JSC::CallVariant::nativeExecutable const):

  • Source/JavaScriptCore/bytecode/CodeBlock.cpp:

(JSC::CodeBlock::CodeBlock):
(JSC::CodeBlock::finishCreation):
(JSC::CodeBlock::isConstantOwnedByUnlinkedCodeBlock const):
(JSC::CodeBlock::setConstantRegisters):
(JSC::CodeBlock::determineLiveness):
(JSC::CodeBlock::replacement):
(JSC::CodeBlock::computeCapabilityLevel):
(JSC::CodeBlock::nameForRegister):

  • Source/JavaScriptCore/bytecode/GetByStatus.cpp:

(JSC::GetByStatus::computeForStubInfoWithoutExitSiteFeedback):

  • Source/JavaScriptCore/bytecode/InByStatus.cpp:

(JSC::InByStatus::computeForStubInfoWithoutExitSiteFeedback):

  • Source/JavaScriptCore/bytecode/LLIntPrototypeLoadAdaptiveStructureWatchpoint.cpp:

(JSC::LLIntPrototypeLoadAdaptiveStructureWatchpoint::install):

  • Source/JavaScriptCore/bytecode/ObjectAllocationProfileInlines.h:

(JSC::ObjectAllocationProfileBase<Derived>::possibleDefaultPropertyCount):

  • Source/JavaScriptCore/bytecode/ObjectPropertyCondition.cpp:

(JSC::ObjectPropertyCondition::attemptToMakeEquivalenceWithoutBarrier const):

  • Source/JavaScriptCore/bytecode/ObjectPropertyCondition.h:

(JSC::ObjectPropertyCondition::isValidValueForPresence const):

  • Source/JavaScriptCore/bytecode/ObjectPropertyConditionSet.cpp:

(JSC::generateConditionsForPrototypePropertyHitCustom):
(JSC::generateConditionsForInstanceOf):
(JSC::prepareChainForCaching):

  • Source/JavaScriptCore/bytecode/PolyProtoAccessChain.cpp:

(JSC::PolyProtoAccessChain::tryCreate):

  • Source/JavaScriptCore/bytecode/PropertyCondition.cpp:

(JSC::PropertyCondition::isValidValueForAttributes):
(JSC::PropertyCondition::isValidValueForPresence const):
(JSC::PropertyCondition::attemptToMakeEquivalenceWithoutBarrier const):

  • Source/JavaScriptCore/bytecode/PropertyCondition.h:
  • Source/JavaScriptCore/bytecode/PutByStatus.cpp:

(JSC::PutByStatus::computeForStubInfo):

  • Source/JavaScriptCore/bytecode/Repatch.cpp:

(JSC::jsToWasmICCodePtr):
(JSC::actionForCell):
(JSC::tryCacheGetBy):
(JSC::tryCacheArrayGetByVal):
(JSC::tryCachePutBy):
(JSC::tryCacheArrayPutByVal):
(JSC::repatchDeleteBy):
(JSC::tryCacheInBy):
(JSC::repatchInBy):
(JSC::tryCacheHasPrivateBrand):
(JSC::tryCacheCheckPrivateBrand):
(JSC::tryCacheInstanceOf):
(JSC::linkPolymorphicCall):

  • Source/JavaScriptCore/bytecode/Repatch.h:
  • Source/JavaScriptCore/bytecode/RepatchInlines.h:

(JSC::handleHostCall):
(JSC::linkFor):
(JSC::virtualForWithFunction):

  • Source/JavaScriptCore/bytecode/StructureStubClearingWatchpoint.cpp:

(JSC::StructureTransitionStructureStubClearingWatchpoint::fireInternal):

  • Source/JavaScriptCore/bytecode/StructureStubInfo.cpp:

(JSC::StructureStubInfo::visitWeakReferences):
(JSC::StructureStubInfo::propagateTransitions):

  • Source/JavaScriptCore/bytecode/StructureStubInfo.h:

(JSC::StructureStubInfo::inlineAccessBaseStructure):

  • Source/JavaScriptCore/debugger/Debugger.cpp:

(JSC::Debugger::attach):
(JSC::Debugger::exception):

  • Source/JavaScriptCore/debugger/DebuggerCallFrame.cpp:

(JSC::DebuggerCallFrame::functionName const):
(JSC::DebuggerCallFrame::scope):
(JSC::DebuggerCallFrame::type const):

  • Source/JavaScriptCore/debugger/DebuggerScope.cpp:

(JSC::DebuggerScope::create):
(JSC::DebuggerScope::put):
(JSC::DebuggerScope::deleteProperty):
(JSC::DebuggerScope::defineOwnProperty):
(JSC::DebuggerScope::name const):
(JSC::DebuggerScope::location const):

  • Source/JavaScriptCore/dfg/DFGAbstractInterpreterInlines.h:

(JSC::DFG::isToThisAnIdentity):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::executeEffects):
(JSC::DFG::AbstractInterpreter<AbstractStateType>::filterICStatus):

  • Source/JavaScriptCore/dfg/DFGAbstractValue.cpp:

(JSC::DFG::AbstractValue::mergeOSREntryValue):

  • Source/JavaScriptCore/dfg/DFGAdaptiveStructureWatchpoint.cpp:

(JSC::DFG::AdaptiveStructureWatchpoint::install):

  • Source/JavaScriptCore/dfg/DFGArgumentsEliminationPhase.cpp:
  • Source/JavaScriptCore/dfg/DFGArrayMode.cpp:

(JSC::DFG::ArrayMode::refine const):

  • Source/JavaScriptCore/dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::get):
(JSC::DFG::ByteCodeParser::handleIntrinsicCall):
(JSC::DFG::ByteCodeParser::handleTypedArrayConstructor):
(JSC::DFG::ByteCodeParser::handleConstantInternalFunction):
(JSC::DFG::ByteCodeParser::check):
(JSC::DFG::ByteCodeParser::planLoad):
(JSC::DFG::ByteCodeParser::checkPresenceForReplace):
(JSC::DFG::ByteCodeParser::load):
(JSC::DFG::ByteCodeParser::parseBlock):
(JSC::DFG::ByteCodeParser::handlePutByVal):
(JSC::DFG::ByteCodeParser::handleCreateInternalFieldObject):

  • Source/JavaScriptCore/dfg/DFGConstantFoldingPhase.cpp:

(JSC::DFG::ConstantFoldingPhase::foldConstants):
(JSC::DFG::ConstantFoldingPhase::addStructureTransitionCheck):
(JSC::DFG::ConstantFoldingPhase::tryFoldAsPutByOffset):

  • Source/JavaScriptCore/dfg/DFGDesiredWeakReferences.cpp:

(JSC::DFG::DesiredWeakReferences::reallyAdd):

  • Source/JavaScriptCore/dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):
(JSC::DFG::FixupPhase::fixupMakeRope):
(JSC::DFG::FixupPhase::setSaneChainIfPossible):

  • Source/JavaScriptCore/dfg/DFGFrozenValue.h:

(JSC::DFG::FrozenValue::FrozenValue):
(JSC::DFG::FrozenValue::dynamicCast):

  • Source/JavaScriptCore/dfg/DFGGraph.cpp:

(JSC::DFG::Graph::dump):
(JSC::DFG::Graph::tryGetConstantProperty):
(JSC::DFG::Graph::tryGetConstantClosureVar):
(JSC::DFG::Graph::tryGetFoldableView):
(JSC::DFG::Graph::freeze):
(JSC::DFG::Graph::getRegExpPrototypeProperty):
(JSC::DFG::Graph::isStringPrototypeMethodSane):
(JSC::DFG::Graph::canOptimizeStringObjectAccess):

  • Source/JavaScriptCore/dfg/DFGGraph.h:
  • Source/JavaScriptCore/dfg/DFGLazyJSValue.cpp:

(JSC::DFG::LazyJSValue::tryGetStringImpl const):
(JSC::DFG::LazyJSValue::tryGetString const):

  • Source/JavaScriptCore/dfg/DFGLazyJSValue.h:
  • Source/JavaScriptCore/dfg/DFGNode.h:

(JSC::DFG::Node::dynamicCastConstant):

  • Source/JavaScriptCore/dfg/DFGOperations.cpp:

(JSC::DFG::putByVal):
(JSC::DFG::getByValObject):
(JSC::DFG::JSC_DEFINE_JIT_OPERATION):
(JSC::DFG::defineDataProperty):
(JSC::DFG::defineAccessorProperty):
(JSC::DFG::putDynamicVar):

  • Source/JavaScriptCore/dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • Source/JavaScriptCore/dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileGetByValOnString):

  • Source/JavaScriptCore/dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall):

  • Source/JavaScriptCore/dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::emitCall):

  • Source/JavaScriptCore/dfg/DFGStrengthReductionPhase.cpp:

(JSC::DFG::StrengthReductionPhase::handleNode):

  • Source/JavaScriptCore/ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::compileMakeRope):
(JSC::FTL::DFG::LowerDFGToB3::compileStringCharAtImpl):
(JSC::FTL::DFG::LowerDFGToB3::compileCompareStrictEq):

  • Source/JavaScriptCore/ftl/FTLOperations.cpp:

(JSC::FTL::JSC_DEFINE_JIT_OPERATION):

  • Source/JavaScriptCore/heap/GCAssertions.h:
  • Source/JavaScriptCore/heap/Heap.cpp:

(JSC::GatherExtraHeapData::GatherExtraHeapData):
(JSC::GatherExtraHeapData::operator() const):
(JSC::Heap::gatherExtraHeapData):
(JSC::Heap::protectedObjectTypeCounts):
(JSC::Heap::objectTypeCounts):
(JSC::Heap::addCoreConstraints):

  • Source/JavaScriptCore/heap/HeapCellType.cpp:

(JSC::DefaultDestroyFunc::operator() const):

  • Source/JavaScriptCore/heap/HeapSnapshotBuilder.cpp:

(JSC::HeapSnapshotBuilder::descriptionForCell const):
(JSC::HeapSnapshotBuilder::json):

  • Source/JavaScriptCore/heap/SlotVisitor.cpp:

(JSC::validate):
(JSC::SlotVisitor::visitChildren):

  • Source/JavaScriptCore/heap/VerifierSlotVisitor.cpp:

(JSC::VerifierSlotVisitor::visitChildren):

  • Source/JavaScriptCore/inspector/InjectedScriptManager.cpp:

(Inspector::InjectedScriptManager::createInjectedScript):

  • Source/JavaScriptCore/inspector/JSInjectedScriptHost.cpp:

(Inspector::JSInjectedScriptHost::finishCreation):
(Inspector::JSInjectedScriptHost::isPromiseRejectedWithNativeGetterTypeError):
(Inspector::JSInjectedScriptHost::subtype):
(Inspector::JSInjectedScriptHost::functionDetails):
(Inspector::JSInjectedScriptHost::getInternalProperties):
(Inspector::JSInjectedScriptHost::proxyTargetValue):
(Inspector::JSInjectedScriptHost::weakMapSize):
(Inspector::JSInjectedScriptHost::weakMapEntries):
(Inspector::JSInjectedScriptHost::weakSetSize):
(Inspector::JSInjectedScriptHost::weakSetEntries):
(Inspector::JSInjectedScriptHost::iteratorEntries):
(Inspector::JSInjectedScriptHost::queryInstances):

  • Source/JavaScriptCore/inspector/JSInjectedScriptHost.h:
  • Source/JavaScriptCore/inspector/JSInjectedScriptHostPrototype.cpp:

(Inspector::JSInjectedScriptHostPrototype::finishCreation):
(Inspector::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/inspector/JSJavaScriptCallFrame.cpp:

(Inspector::JSJavaScriptCallFrame::finishCreation):
(Inspector::JSJavaScriptCallFrame::caller const):
(Inspector::JSJavaScriptCallFrame::scopeChain const):

  • Source/JavaScriptCore/inspector/JSJavaScriptCallFramePrototype.cpp:

(Inspector::JSJavaScriptCallFramePrototype::finishCreation):
(Inspector::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/inspector/ScriptArguments.cpp:

(Inspector::ScriptArguments::getArgumentAtIndexAsString const):

  • Source/JavaScriptCore/inspector/ScriptCallStackFactory.cpp:

(Inspector::extractSourceInformationFromException):

  • Source/JavaScriptCore/inspector/agents/InspectorHeapAgent.cpp:

(Inspector::InspectorHeapAgent::snapshot):
(Inspector::InspectorHeapAgent::getPreview):
(Inspector::InspectorHeapAgent::getRemoteObject):

  • Source/JavaScriptCore/interpreter/CachedCall.h:

(JSC::CachedCall::CachedCall):

  • Source/JavaScriptCore/interpreter/CallFrame.cpp:

(JSC::CallFrame::convertToStackOverflowFrame):

  • Source/JavaScriptCore/interpreter/Interpreter.cpp:

(JSC::UnwindFunctor::UnwindFunctor):
(JSC::UnwindFunctor::operator() const):
(JSC::UnwindFunctor::notifyDebuggerOfUnwinding):
(JSC::sanitizeRemoteFunctionException):
(JSC::Interpreter::executeProgram):
(JSC::Interpreter::executeCall):
(JSC::Interpreter::executeConstruct):
(JSC::Interpreter::execute):
(JSC::Interpreter::executeModuleProgram):

  • Source/JavaScriptCore/interpreter/ShadowChicken.cpp:

(JSC::ShadowChicken::Packet::dump const):
(JSC::ShadowChicken::Frame::dump const):
(JSC::ShadowChicken::update):

  • Source/JavaScriptCore/interpreter/StackVisitor.cpp:

(JSC::StackVisitor::Frame::calleeSaveRegistersForUnwinding):

  • Source/JavaScriptCore/jit/JITOperations.cpp:

(JSC::getWrappedValue):
(JSC::JSC_DEFINE_JIT_OPERATION):
(JSC::setPrivateField):
(JSC::definePrivateField):
(JSC::putByVal):
(JSC::putByValOptimize):
(JSC::directPutByValOptimize):
(JSC::putPrivateNameOptimize):
(JSC::newFunctionCommon):
(JSC::getByVal):
(JSC::deleteById):
(JSC::deleteByVal):

  • Source/JavaScriptCore/jsc.cpp:

(JSC_DEFINE_CUSTOM_SETTER):
(JSC_DEFINE_HOST_FUNCTION):
(checkException):
(runJSC):

  • Source/JavaScriptCore/llint/LLIntSlowPaths.cpp:

(JSC::LLInt::LLINT_SLOW_PATH_DECL):
(JSC::LLInt::setupGetByIdPrototypeCache):
(JSC::LLInt::performLLIntGetByID):
(JSC::LLInt::getByVal):
(JSC::LLInt::handleHostCall):
(JSC::LLInt::setUpCall):
(JSC::LLInt::llint_throw_stack_overflow_error):

  • Source/JavaScriptCore/runtime/AbstractModuleRecord.cpp:

(JSC::AbstractModuleRecord::finishCreation):
(JSC::AbstractModuleRecord::link):
(JSC::AbstractModuleRecord::evaluate):

  • Source/JavaScriptCore/runtime/AggregateErrorConstructor.cpp:

(JSC::AggregateErrorConstructor::finishCreation):

  • Source/JavaScriptCore/runtime/AggregateErrorPrototype.cpp:

(JSC::AggregateErrorPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/ArrayBuffer.cpp:

(JSC::ArrayBuffer::notifyDetaching):

  • Source/JavaScriptCore/runtime/ArrayConstructor.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/ArrayIteratorPrototype.cpp:

(JSC::ArrayIteratorPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/ArrayPrototype.cpp:

(JSC::ArrayPrototype::finishCreation):
(JSC::setLength):
(JSC::speciesWatchpointIsValid):
(JSC::holesMustForwardToPrototype):
(JSC::fastJoin):
(JSC::canUseDefaultArrayJoinForToString):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::toLocaleString):
(JSC::fastIndexOf):
(JSC::moveElements):

  • Source/JavaScriptCore/runtime/AsyncFromSyncIteratorPrototype.cpp:

(JSC::AsyncFromSyncIteratorPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/AsyncFunctionPrototype.cpp:

(JSC::AsyncFunctionPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/AsyncGeneratorFunctionPrototype.cpp:

(JSC::AsyncGeneratorFunctionPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/AsyncGeneratorPrototype.cpp:

(JSC::AsyncGeneratorPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/AsyncIteratorPrototype.cpp:

(JSC::AsyncIteratorPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/AtomicsObject.cpp:

(JSC::AtomicsObject::finishCreation):

  • Source/JavaScriptCore/runtime/BatchedTransitionOptimizer.h:

(JSC::BatchedTransitionOptimizer::BatchedTransitionOptimizer):

  • Source/JavaScriptCore/runtime/BigIntConstructor.cpp:

(JSC::BigIntConstructor::finishCreation):

  • Source/JavaScriptCore/runtime/BigIntObject.cpp:

(JSC::BigIntObject::finishCreation):

  • Source/JavaScriptCore/runtime/BigIntPrototype.cpp:

(JSC::BigIntPrototype::finishCreation):
(JSC::toThisBigIntValue):

  • Source/JavaScriptCore/runtime/BooleanObject.cpp:

(JSC::BooleanObject::finishCreation):

  • Source/JavaScriptCore/runtime/BooleanPrototype.cpp:

(JSC::BooleanPrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/CachedSpecialPropertyAdaptiveStructureWatchpoint.cpp:

(JSC::CachedSpecialPropertyAdaptiveStructureWatchpoint::install):

  • Source/JavaScriptCore/runtime/CachedTypes.cpp:

(JSC::CachedJSValue::encode):
(JSC::encodeCodeBlock):

  • Source/JavaScriptCore/runtime/CallData.cpp:

(JSC::call):

  • Source/JavaScriptCore/runtime/CellSize.h:

(JSC::cellSize):

  • Source/JavaScriptCore/runtime/ClonedArguments.cpp:

(JSC::ClonedArguments::createEmpty):
(JSC::ClonedArguments::createWithInlineFrame):
(JSC::ClonedArguments::createWithMachineFrame):
(JSC::ClonedArguments::createByCopyingFrom):
(JSC::ClonedArguments::getOwnPropertySlot):
(JSC::ClonedArguments::materializeSpecials):

  • Source/JavaScriptCore/runtime/CodeCache.cpp:

(JSC::CodeCacheMap::pruneSlowCase):
(JSC::CodeCache::write):
(JSC::writeCodeBlock):

  • Source/JavaScriptCore/runtime/CodeCache.h:
  • Source/JavaScriptCore/runtime/CommonSlowPaths.cpp:

(JSC::JSC_DEFINE_COMMON_SLOW_PATH):
(JSC::createInternalFieldObject):
(JSC::iteratorNextTryFastImpl):

  • Source/JavaScriptCore/runtime/CommonSlowPaths.h:

(JSC::CommonSlowPaths::opInByVal):
(JSC::CommonSlowPaths::originalStructureBeforePut):
(JSC::CommonSlowPaths::putDirectWithReify):
(JSC::CommonSlowPaths::putDirectAccessorWithReify):

  • Source/JavaScriptCore/runtime/CommonSlowPathsInlines.h:

(JSC::CommonSlowPaths::tryCachePutToScopeGlobal):
(JSC::CommonSlowPaths::tryCacheGetFromScopeGlobal):

  • Source/JavaScriptCore/runtime/ConsoleObject.cpp:

(JSC::ConsoleObject::finishCreation):

  • Source/JavaScriptCore/runtime/ConstructData.cpp:

(JSC::construct):

  • Source/JavaScriptCore/runtime/DateConstructor.cpp:

(JSC::constructDate):

  • Source/JavaScriptCore/runtime/DateInstance.cpp:

(JSC::DateInstance::finishCreation):

  • Source/JavaScriptCore/runtime/DatePrototype.cpp:

(JSC::formateDateInstance):
(JSC::DatePrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::setNewValueFromTimeArgs):
(JSC::setNewValueFromDateArgs):

  • Source/JavaScriptCore/runtime/DeferredWorkTimer.cpp:

(JSC::DeferredWorkTimer::doWork):

  • Source/JavaScriptCore/runtime/DirectArguments.h:
  • Source/JavaScriptCore/runtime/Error.cpp:

(JSC::getStackTrace):
(JSC::addErrorInfo):

  • Source/JavaScriptCore/runtime/ErrorInstance.cpp:

(JSC::ErrorInstance::finishCreation):
(JSC::ErrorInstance::sanitizedNameString):

  • Source/JavaScriptCore/runtime/ErrorPrototype.cpp:

(JSC::ErrorPrototypeBase::finishCreation):

  • Source/JavaScriptCore/runtime/ExceptionHelpers.cpp:

(JSC::errorDescriptionForValue):
(JSC::createError):
(JSC::createInvalidFunctionApplyParameterError):

  • Source/JavaScriptCore/runtime/FinalizationRegistryConstructor.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/FinalizationRegistryPrototype.cpp:

(JSC::FinalizationRegistryPrototype::finishCreation):
(JSC::getFinalizationRegistry):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/FunctionPrototype.cpp:

(JSC::FunctionPrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::JSC_DEFINE_CUSTOM_GETTER):
(JSC::RetrieveCallerFunctionFunctor::operator() const):
(JSC::JSC_DEFINE_CUSTOM_SETTER):

  • Source/JavaScriptCore/runtime/GeneratorFunctionPrototype.cpp:

(JSC::GeneratorFunctionPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/GeneratorPrototype.cpp:

(JSC::GeneratorPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/GenericArgumentsInlines.h:

(JSC::GenericArguments<Type>::getOwnPropertySlot):

  • Source/JavaScriptCore/runtime/GetterSetter.cpp:

(JSC::GetterSetter::callGetter):
(JSC::GetterSetter::callSetter):

  • Source/JavaScriptCore/runtime/GetterSetter.h:
  • Source/JavaScriptCore/runtime/HasOwnPropertyCache.h:

(JSC::HasOwnPropertyCache::tryAdd):

  • Source/JavaScriptCore/runtime/InternalFunction.cpp:

(JSC::InternalFunction::InternalFunction):
(JSC::InternalFunction::createSubclassStructure):
(JSC::getFunctionRealm):

  • Source/JavaScriptCore/runtime/IntlCollator.cpp:

(JSC::IntlCollator::finishCreation):

  • Source/JavaScriptCore/runtime/IntlCollatorPrototype.cpp:

(JSC::IntlCollatorPrototype::finishCreation):
(JSC::JSC_DEFINE_CUSTOM_GETTER):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/IntlDateTimeFormat.cpp:

(JSC::IntlDateTimeFormat::finishCreation):

  • Source/JavaScriptCore/runtime/IntlDateTimeFormatPrototype.cpp:

(JSC::IntlDateTimeFormatPrototype::finishCreation):
(JSC::IntlDateTimeFormat::handleDateTimeValue):
(JSC::JSC_DEFINE_CUSTOM_GETTER):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/IntlDisplayNames.cpp:

(JSC::IntlDisplayNames::finishCreation):

  • Source/JavaScriptCore/runtime/IntlDisplayNamesPrototype.cpp:

(JSC::IntlDisplayNamesPrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/IntlListFormat.cpp:

(JSC::IntlListFormat::finishCreation):

  • Source/JavaScriptCore/runtime/IntlListFormatPrototype.cpp:

(JSC::IntlListFormatPrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/IntlLocale.cpp:

(JSC::IntlLocale::finishCreation):
(JSC::IntlLocale::initializeLocale):

  • Source/JavaScriptCore/runtime/IntlLocalePrototype.cpp:

(JSC::IntlLocalePrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::JSC_DEFINE_CUSTOM_GETTER):

  • Source/JavaScriptCore/runtime/IntlNumberFormat.cpp:

(JSC::IntlNumberFormat::finishCreation):

  • Source/JavaScriptCore/runtime/IntlNumberFormatPrototype.cpp:

(JSC::IntlNumberFormatPrototype::finishCreation):
(JSC::JSC_DEFINE_CUSTOM_GETTER):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/IntlObject.cpp:

(JSC::createCollatorConstructor):
(JSC::createDateTimeFormatConstructor):
(JSC::createDisplayNamesConstructor):
(JSC::createListFormatConstructor):
(JSC::createLocaleConstructor):
(JSC::createNumberFormatConstructor):
(JSC::createPluralRulesConstructor):
(JSC::createRelativeTimeFormatConstructor):
(JSC::createSegmenterConstructor):
(JSC::IntlObject::finishCreation):
(JSC::canonicalizeLocaleList):

  • Source/JavaScriptCore/runtime/IntlObjectInlines.h:

(JSC::constructIntlInstanceWithWorkaroundForLegacyIntlConstructor):
(JSC::unwrapForLegacyIntlConstructor):

  • Source/JavaScriptCore/runtime/IntlPluralRules.cpp:

(JSC::IntlPluralRules::finishCreation):

  • Source/JavaScriptCore/runtime/IntlPluralRulesPrototype.cpp:

(JSC::IntlPluralRulesPrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/IntlRelativeTimeFormat.cpp:

(JSC::IntlRelativeTimeFormat::finishCreation):

  • Source/JavaScriptCore/runtime/IntlRelativeTimeFormatPrototype.cpp:

(JSC::IntlRelativeTimeFormatPrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/IntlSegmentIterator.cpp:

(JSC::IntlSegmentIterator::finishCreation):

  • Source/JavaScriptCore/runtime/IntlSegmentIteratorPrototype.cpp:

(JSC::IntlSegmentIteratorPrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/IntlSegmenter.cpp:

(JSC::IntlSegmenter::finishCreation):

  • Source/JavaScriptCore/runtime/IntlSegmenterPrototype.cpp:

(JSC::IntlSegmenterPrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/IntlSegments.cpp:

(JSC::IntlSegments::finishCreation):

  • Source/JavaScriptCore/runtime/IntlSegmentsPrototype.cpp:

(JSC::IntlSegmentsPrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/IteratorOperations.cpp:

(JSC::iteratorNext):
(JSC::iteratorClose):
(JSC::iteratorForIterable):
(JSC::getIterationMode):

  • Source/JavaScriptCore/runtime/IteratorPrototype.cpp:

(JSC::IteratorPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/JSArray.cpp:

(JSC::JSArray::eagerlyInitializeButterfly):
(JSC::JSArray::unshiftCountSlowCase):
(JSC::JSArray::appendMemcpy):
(JSC::JSArray::fastSlice):
(JSC::JSArray::shiftCountWithArrayStorage):
(JSC::JSArray::shiftCountWithAnyIndexingType):
(JSC::JSArray::unshiftCountWithArrayStorage):
(JSC::JSArray::isIteratorProtocolFastAndNonObservable):

  • Source/JavaScriptCore/runtime/JSArray.h:

(JSC::JSArray::finishCreation):
(JSC::asArray):
(JSC::isJSArray):

  • Source/JavaScriptCore/runtime/JSArrayBuffer.h:

(JSC::toPossiblySharedArrayBuffer):

  • Source/JavaScriptCore/runtime/JSArrayBufferConstructor.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/JSArrayBufferPrototype.cpp:

(JSC::arrayBufferSpeciesConstructorSlow):
(JSC::arrayBufferSlice):
(JSC::arrayBufferByteLength):

  • Source/JavaScriptCore/runtime/JSArrayBufferPrototypeInlines.h:

(JSC::speciesWatchpointIsValid):
(JSC::arrayBufferSpeciesConstructor):

  • Source/JavaScriptCore/runtime/JSArrayBufferView.cpp:

(JSC::JSArrayBufferView::finishCreation):
(JSC::JSArrayBufferView::unsharedJSBuffer):
(JSC::JSArrayBufferView::possiblySharedJSBuffer):
(JSC::JSArrayBufferView::slowDownAndWasteMemory):
(JSC::validateTypedArray):

  • Source/JavaScriptCore/runtime/JSArrayBufferViewInlines.h:

(JSC::JSArrayBufferView::toWrapped):
(JSC::JSArrayBufferView::toWrappedAllowShared):

  • Source/JavaScriptCore/runtime/JSArrayInlines.h:

(JSC::JSArray::canFastCopy):
(JSC::JSArray::canDoFastIndexedAccess):
(JSC::JSArray::pushInline):

  • Source/JavaScriptCore/runtime/JSAsyncFunction.cpp:

(JSC::JSAsyncFunction::createImpl):
(JSC::JSAsyncFunction::create):
(JSC::JSAsyncFunction::createWithInvalidatedReallocationWatchpoint):

  • Source/JavaScriptCore/runtime/JSAsyncGeneratorFunction.cpp:

(JSC::JSAsyncGeneratorFunction::createImpl):
(JSC::JSAsyncGeneratorFunction::create):
(JSC::JSAsyncGeneratorFunction::createWithInvalidatedReallocationWatchpoint):

  • Source/JavaScriptCore/runtime/JSBoundFunction.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::getBoundFunctionStructure):
(JSC::JSBoundFunction::create):
(JSC::JSBoundFunction::finishCreation):

  • Source/JavaScriptCore/runtime/JSCJSValue.cpp:

(JSC::JSValue::putToPrimitive):
(JSC::JSValue::dumpForBacktrace const):
(JSC::JSValue::toWTFStringForConsole const):

  • Source/JavaScriptCore/runtime/JSCJSValue.h:
  • Source/JavaScriptCore/runtime/JSCJSValueInlines.h:

(JSC::JSValue::isCallable const):
(JSC::JSValue::isCallableWithConcurrency const):
(JSC::JSValue::isConstructor const):
(JSC::JSValue::isConstructorWithConcurrency const):
(JSC::JSValue::inherits const):
(JSC::JSValue::classInfoOrNull const):
(JSC::JSValue::toThis const):
(JSC::JSValue::put):
(JSC::JSValue::putByIndex):
(JSC::JSValue::structureOrNull const):
(JSC::JSValue::equalSlowCaseInline):

  • Source/JavaScriptCore/runtime/JSCallee.cpp:

(JSC::JSCallee::finishCreation):

  • Source/JavaScriptCore/runtime/JSCast.h:

(JSC::jsCast):
(JSC::JSCastingHelpers::FinalTypeDispatcher::inheritsGeneric):
(JSC::JSCastingHelpers::inheritsJSTypeImpl):
(JSC::JSCastingHelpers::InheritsTraits::inherits):
(JSC::JSCastingHelpers::inherits):
(JSC::jsDynamicCast):
(JSC::jsSecureCast):

  • Source/JavaScriptCore/runtime/JSCell.cpp:

(JSC::JSCell::dump const):
(JSC::JSCell::dumpToStream):
(JSC::JSCell::estimatedSizeInBytes const):
(JSC::JSCell::put):
(JSC::JSCell::putByIndex):
(JSC::JSCell::deleteProperty):
(JSC::JSCell::deletePropertyByIndex):
(JSC::JSCell::className const):

  • Source/JavaScriptCore/runtime/JSCell.h:
  • Source/JavaScriptCore/runtime/JSCellInlines.h:

(JSC::JSCell::visitChildrenImpl):
(JSC::JSCell::isCallableWithConcurrency):
(JSC::JSCell::isConstructorWithConcurrency):
(JSC::JSCell::isCallable):
(JSC::JSCell::isConstructor):
(JSC::JSCell::setStructure):
(JSC::JSCell::methodTable const):
(JSC::JSCell::inherits const):
(JSC::JSCell::classInfo const):
(JSC::JSCell::toBoolean const):
(JSC::JSCell::putInline):

  • Source/JavaScriptCore/runtime/JSCustomGetterFunction.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/JSDataViewPrototype.cpp:

(JSC::JSDataViewPrototype::finishCreation):
(JSC::getData):
(JSC::setData):
(JSC::JSC_DEFINE_CUSTOM_GETTER):

  • Source/JavaScriptCore/runtime/JSFinalizationRegistry.cpp:

(JSC::JSFinalizationRegistry::finishCreation):
(JSC::JSFinalizationRegistry::registerTarget):

  • Source/JavaScriptCore/runtime/JSFunction.cpp:

(JSC::JSFunction::create):
(JSC::JSFunction::finishCreation):
(JSC::JSFunction::name):
(JSC::JSFunction::toString):
(JSC::getCalculatedDisplayName):
(JSC::JSFunction::reifyLength):
(JSC::JSFunction::reifyLazyPropertyIfNeeded):
(JSC::JSFunction::reifyLazyPropertyForHostOrBuiltinIfNeeded):
(JSC::JSFunction::reifyLazyBoundNameIfNeeded):
(JSC::JSFunction::assertTypeInfoFlagInvariants):

  • Source/JavaScriptCore/runtime/JSFunction.h:

(JSC::JSFunction::createImpl):

  • Source/JavaScriptCore/runtime/JSFunctionInlines.h:

(JSC::JSFunction::createWithInvalidatedReallocationWatchpoint):
(JSC::JSFunction::isRemoteFunction const):
(JSC::isRemoteFunction):
(JSC::JSFunction::asStringConcurrently const):

  • Source/JavaScriptCore/runtime/JSGeneratorFunction.cpp:

(JSC::JSGeneratorFunction::createImpl):
(JSC::JSGeneratorFunction::create):
(JSC::JSGeneratorFunction::createWithInvalidatedReallocationWatchpoint):

  • Source/JavaScriptCore/runtime/JSGenericTypedArrayView.h:

(JSC::toPossiblySharedNativeTypedView):

  • Source/JavaScriptCore/runtime/JSGenericTypedArrayViewConstructorInlines.h:

(JSC::constructCustomArrayBufferIfNeeded):
(JSC::constructGenericTypedArrayViewWithArguments):
(JSC::constructGenericTypedArrayViewImpl):

  • Source/JavaScriptCore/runtime/JSGenericTypedArrayViewInlines.h:

(JSC::JSGenericTypedArrayView<Adaptor>::set):

  • Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeFunctions.h:

(JSC::speciesConstruct):
(JSC::genericTypedArrayViewProtoFuncSet):
(JSC::genericTypedArrayViewProtoFuncSlice):
(JSC::genericTypedArrayViewPrivateFuncSubarrayCreate):

  • Source/JavaScriptCore/runtime/JSGenericTypedArrayViewPrototypeInlines.h:

(JSC::JSGenericTypedArrayViewPrototype<ViewClass>::finishCreation):

  • Source/JavaScriptCore/runtime/JSGlobalObject.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::setupAdaptiveWatchpoint):
(JSC::JSGlobalObject::init):
(JSC::lastInPrototypeChain):
(JSC::JSGlobalObject::haveABadTime):
(JSC::JSGlobalObject::fixupPrototypeChainWithObjectPrototype):
(JSC::JSGlobalObject::resetPrototype):
(JSC::JSGlobalObject::tryInstallSpeciesWatchpoint):
(JSC::JSGlobalObject::finishCreation):

  • Source/JavaScriptCore/runtime/JSGlobalObjectFunctions.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/JSGlobalObjectInlines.h:

(JSC::JSGlobalObject::arrayPrototypeChainIsSane):
(JSC::JSGlobalObject::stringPrototypeChainIsSane):

  • Source/JavaScriptCore/runtime/JSInternalPromise.cpp:

(JSC::JSInternalPromise::then):

  • Source/JavaScriptCore/runtime/JSLexicalEnvironment.cpp:

(JSC::JSLexicalEnvironment::getOwnPropertySlot):
(JSC::JSLexicalEnvironment::put):

  • Source/JavaScriptCore/runtime/JSMap.cpp:

(JSC::JSMap::isIteratorProtocolFastAndNonObservable):

  • Source/JavaScriptCore/runtime/JSMicrotask.cpp:

(JSC::JSMicrotask::run):

  • Source/JavaScriptCore/runtime/JSModuleEnvironment.cpp:

(JSC::JSModuleEnvironment::getOwnPropertySlot):

  • Source/JavaScriptCore/runtime/JSModuleLoader.cpp:

(JSC::JSModuleLoader::finishCreation):
(JSC::JSModuleLoader::dependencyKeysIfEvaluated):
(JSC::JSModuleLoader::provideFetch):
(JSC::JSModuleLoader::loadAndEvaluateModule):
(JSC::JSModuleLoader::loadModule):
(JSC::JSModuleLoader::linkAndEvaluateModule):
(JSC::JSModuleLoader::requestImportModule):
(JSC::JSModuleLoader::evaluateNonVirtual):
(JSC::JSModuleLoader::getModuleNamespaceObject):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/JSModuleNamespaceObject.cpp:

(JSC::JSModuleNamespaceObject::finishCreation):

  • Source/JavaScriptCore/runtime/JSModuleNamespaceObject.h:
  • Source/JavaScriptCore/runtime/JSModuleRecord.cpp:

(JSC::JSModuleRecord::finishCreation):

  • Source/JavaScriptCore/runtime/JSNativeStdFunction.cpp:

(JSC::JSNativeStdFunction::finishCreation):

  • Source/JavaScriptCore/runtime/JSONObject.cpp:

(JSC::JSONObject::finishCreation):
(JSC::unwrapBoxedPrimitive):
(JSC::Stringifier::Stringifier):
(JSC::Stringifier::toJSON):
(JSC::Stringifier::appendStringifiedValue):
(JSC::Stringifier::Holder::appendNextProperty):
(JSC::Walker::walk):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/JSObject.cpp:

(JSC::JSObject::visitButterflyImpl):
(JSC::JSObject::estimatedSize):
(JSC::JSObject::calculatedClassName):
(JSC::JSObject::getOwnPropertySlotByIndex):
(JSC::ordinarySetSlow):
(JSC::JSObject::putInlineSlow):
(JSC::definePropertyOnReceiverSlow):
(JSC::JSObject::definePropertyOnReceiver):
(JSC::JSObject::putInlineFastReplacingStaticPropertyIfNeeded):
(JSC::JSObject::putByIndex):
(JSC::JSObject::enterDictionaryIndexingModeWhenArrayStorageAlreadyExists):
(JSC::JSObject::notifyPresenceOfIndexedAccessors):
(JSC::JSObject::createInitialIndexedStorage):
(JSC::JSObject::createArrayStorage):
(JSC::JSObject::createInitialArrayStorage):
(JSC::JSObject::convertUndecidedToInt32):
(JSC::JSObject::convertUndecidedToDouble):
(JSC::JSObject::convertUndecidedToContiguous):
(JSC::JSObject::constructConvertedArrayStorageWithoutCopyingElements):
(JSC::JSObject::convertUndecidedToArrayStorage):
(JSC::JSObject::convertInt32ToDouble):
(JSC::JSObject::convertInt32ToContiguous):
(JSC::JSObject::convertInt32ToArrayStorage):
(JSC::JSObject::convertDoubleToContiguous):
(JSC::JSObject::convertDoubleToArrayStorage):
(JSC::JSObject::convertContiguousToArrayStorage):
(JSC::JSObject::convertFromCopyOnWrite):
(JSC::JSObject::tryMakeWritableInt32Slow):
(JSC::JSObject::tryMakeWritableDoubleSlow):
(JSC::JSObject::tryMakeWritableContiguousSlow):
(JSC::JSObject::ensureArrayStorageSlow):
(JSC::JSObject::switchToSlowPutArrayStorage):
(JSC::JSObject::setPrototypeDirect):
(JSC::JSObject::setPrototypeWithCycleCheck):
(JSC::JSObject::getPrototype):
(JSC::JSObject::setPrototype):
(JSC::JSObject::putDirectCustomAccessor):
(JSC::JSObject::putDirectNonIndexAccessor):
(JSC::JSObject::hasEnumerableProperty const):
(JSC::JSObject::deleteProperty):
(JSC::callToPrimitiveFunction):
(JSC::JSObject::ordinaryToPrimitive const):
(JSC::JSObject::getOwnStaticPropertySlot):
(JSC::JSObject::findPropertyHashEntry const):
(JSC::JSObject::hasInstance):
(JSC::JSObject::getPropertyNames):
(JSC::JSObject::getOwnNonIndexPropertyNames):
(JSC::JSObject::seal):
(JSC::JSObject::freeze):
(JSC::JSObject::preventExtensions):
(JSC::JSObject::isExtensible):
(JSC::JSObject::reifyAllStaticProperties):
(JSC::JSObject::fillGetterPropertySlot):
(JSC::canDoFastPutDirectIndex):
(JSC::JSObject::defineOwnIndexedProperty):
(JSC::JSObject::putByIndexBeyondVectorLengthWithoutAttributes):
(JSC::JSObject::putByIndexBeyondVectorLengthWithArrayStorage):
(JSC::JSObject::putByIndexBeyondVectorLength):
(JSC::JSObject::putDirectIndexBeyondVectorLengthWithArrayStorage):
(JSC::JSObject::putDirectIndexSlowOrBeyondVectorLength):
(JSC::JSObject::getNewVectorLength):
(JSC::JSObject::increaseVectorLength):
(JSC::JSObject::ensureLengthSlow):
(JSC::JSObject::reallocateAndShrinkButterfly):
(JSC::JSObject::allocateMoreOutOfLineStorage):
(JSC::JSObject::getOwnPropertyDescriptor):
(JSC::JSObject::convertToDictionary):
(JSC::JSObject::convertToUncacheableDictionary):
(JSC::JSObject::shiftButterflyAfterFlattening):
(JSC::JSObject::getEnumerableLength):
(JSC::JSObject::getMethod):
(JSC::JSObject::anyObjectInChainMayInterceptIndexedAccesses const):
(JSC::JSObject::needsSlowPutIndexing const):
(JSC::JSObject::suggestedArrayStorageTransition const):

  • Source/JavaScriptCore/runtime/JSObject.h:

(JSC::JSObject::putByIndexInline):
(JSC::JSObject::hasIndexingHeader const):
(JSC::JSObject::getDirectIndex):
(JSC::JSObject::getDirect const):
(JSC::JSObject::getDirectOffset):
(JSC::JSObject::hasCustomProperties):
(JSC::JSObject::hasGetterSetterProperties):
(JSC::JSObject::hasCustomGetterSetterProperties):
(JSC::JSObject::hasNonReifiedStaticProperties):
(JSC::JSObject::isSealed):
(JSC::JSObject::isFrozen):
(JSC::JSObject::isStructureExtensible):
(JSC::JSObject::indexingShouldBeSparse):
(JSC::JSObject::staticPropertiesReified):
(JSC::JSObject::flattenDictionaryObject):
(JSC::JSObject::finishCreation):
(JSC::JSNonFinalObject::finishCreation):
(JSC::JSObject::getPrototypeDirect const):
(JSC::JSObject::getPrototype):
(JSC::JSObject::getOwnNonIndexPropertySlot):
(JSC::JSObject::fillCustomGetterPropertySlot):
(JSC::JSObject::getOwnPropertySlotImpl):
(JSC::JSObject::butterflyPreCapacity):
(JSC::JSObject::butterflyTotalSize):

  • Source/JavaScriptCore/runtime/JSObjectInlines.h:

(JSC::JSObject::canPerformFastPutInlineExcludingProto):
(JSC::JSObject::canPerformFastPutInline):
(JSC::JSObject::getPropertySlot):
(JSC::JSObject::getNonIndexPropertySlot):
(JSC::JSObject::getOwnPropertySlotInline):
(JSC::JSObject::mayInterceptIndexedAccesses):
(JSC::JSObject::putInlineForJSObject):
(JSC::JSObject::createDataProperty):
(JSC::JSObject::hasOwnProperty const):
(JSC::JSObject::putDirectInternal):
(JSC::JSObject::validatePutOwnDataProperty):
(JSC::getCallData):
(JSC::getConstructData):
(JSC::JSObject::deleteProperty):
(JSC::JSObject::getPrivateFieldSlot):
(JSC::JSObject::hasPrivateField):
(JSC::JSObject::getNonReifiedStaticPropertyNames):
(JSC::JSObject::hasPrivateBrand):
(JSC::JSObject::checkPrivateBrand):
(JSC::JSObject::setPrivateBrand):

  • Source/JavaScriptCore/runtime/JSPromise.cpp:

(JSC::JSPromise::createNewPromiseCapability):
(JSC::JSPromise::resolvedPromise):
(JSC::callFunction):
(JSC::JSPromise::resolve):
(JSC::JSPromise::reject):
(JSC::JSPromise::performPromiseThen):

  • Source/JavaScriptCore/runtime/JSPropertyNameEnumerator.cpp:

(JSC::getEnumerablePropertyNames):

  • Source/JavaScriptCore/runtime/JSPropertyNameEnumerator.h:

(JSC::propertyNameEnumerator):

  • Source/JavaScriptCore/runtime/JSProxy.cpp:

(JSC::JSProxy::setTarget):
(JSC::JSProxy::getOwnPropertySlot):
(JSC::JSProxy::getOwnPropertySlotByIndex):
(JSC::JSProxy::put):
(JSC::JSProxy::putByIndex):
(JSC::JSProxy::defineOwnProperty):
(JSC::JSProxy::deleteProperty):
(JSC::JSProxy::isExtensible):
(JSC::JSProxy::preventExtensions):
(JSC::JSProxy::deletePropertyByIndex):
(JSC::JSProxy::getOwnPropertyNames):
(JSC::JSProxy::setPrototype):
(JSC::JSProxy::getPrototype):

  • Source/JavaScriptCore/runtime/JSRemoteFunction.cpp:

(JSC::wrapValue):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::JSRemoteFunction::tryCreate):
(JSC::JSRemoteFunction::finishCreation):

  • Source/JavaScriptCore/runtime/JSScope.cpp:

(JSC::abstractAccess):
(JSC::JSScope::resolve):
(JSC::JSScope::resolveScopeForHoistingFuncDeclInEval):
(JSC::JSScope::symbolTable):

  • Source/JavaScriptCore/runtime/JSScope.h:
  • Source/JavaScriptCore/runtime/JSSet.cpp:

(JSC::JSSet::isIteratorProtocolFastAndNonObservable):

  • Source/JavaScriptCore/runtime/JSString.cpp:

(JSC::JSString::dumpToStream):

  • Source/JavaScriptCore/runtime/JSStringIterator.cpp:

(JSC::JSStringIterator::finishCreation):

  • Source/JavaScriptCore/runtime/JSTypedArrayViewPrototype.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::JSTypedArrayViewPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/Lookup.cpp:

(JSC::reifyStaticAccessor):
(JSC::setUpStaticFunctionSlot):

  • Source/JavaScriptCore/runtime/Lookup.h:

(JSC::getStaticPropertySlotFromTable):
(JSC::reifyStaticProperty):

  • Source/JavaScriptCore/runtime/MapConstructor.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/MapIteratorPrototype.cpp:

(JSC::MapIteratorPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/MapPrototype.cpp:

(JSC::MapPrototype::finishCreation):
(JSC::getMap):

  • Source/JavaScriptCore/runtime/MathObject.cpp:

(JSC::MathObject::finishCreation):

  • Source/JavaScriptCore/runtime/NativeErrorConstructor.cpp:

(JSC::NativeErrorConstructorBase::finishCreation):

  • Source/JavaScriptCore/runtime/NumberConstructor.cpp:

(JSC::NumberConstructor::finishCreation):

  • Source/JavaScriptCore/runtime/NumberObject.cpp:

(JSC::NumberObject::finishCreation):

  • Source/JavaScriptCore/runtime/NumberPrototype.cpp:

(JSC::NumberPrototype::finishCreation):
(JSC::toThisNumber):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/ObjectConstructor.cpp:

(JSC::objectConstructorGetOwnPropertyDescriptors):
(JSC::objectAssignGeneric):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::toPropertyDescriptor):
(JSC::defineProperties):
(JSC::setIntegrityLevel):
(JSC::testIntegrityLevel):
(JSC::objectConstructorSeal):
(JSC::objectConstructorFreeze):
(JSC::ownPropertyKeys):

  • Source/JavaScriptCore/runtime/ObjectConstructorInlines.h:

(JSC::objectAssignFast):

  • Source/JavaScriptCore/runtime/ObjectInitializationScope.cpp:

(JSC::ObjectInitializationScope::verifyPropertiesAreInitialized):

  • Source/JavaScriptCore/runtime/ObjectPrototype.cpp:

(JSC::ObjectPrototype::finishCreation):
(JSC::objectPrototypeHasOwnProperty):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::inferBuiltinTag):
(JSC::objectPrototypeToString):

  • Source/JavaScriptCore/runtime/Operations.cpp:

(JSC::jsTypeStringForValueWithConcurrency):
(JSC::normalizePrototypeChain):

  • Source/JavaScriptCore/runtime/Operations.h:

(JSC::jsTypeofIsObjectWithConcurrency):
(JSC::jsTypeofIsFunctionWithConcurrency):

  • Source/JavaScriptCore/runtime/ProgramExecutable.cpp:

(JSC::ProgramExecutable::initializeGlobalProperties):

  • Source/JavaScriptCore/runtime/PropertySlot.cpp:

(JSC::PropertySlot::customGetter const):

  • Source/JavaScriptCore/runtime/ProxyObject.cpp:

(JSC::ProxyObject::structureForTarget):
(JSC::ProxyObject::finishCreation):
(JSC::ProxyObject::performInternalMethodGetOwnProperty):
(JSC::ProxyObject::put):
(JSC::ProxyObject::putByIndexCommon):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::ProxyObject::deleteProperty):
(JSC::ProxyObject::deletePropertyByIndex):
(JSC::ProxyObject::performPreventExtensions):
(JSC::ProxyObject::performDefineOwnProperty):
(JSC::ProxyObject::performGetOwnPropertyNames):

  • Source/JavaScriptCore/runtime/ReflectObject.cpp:

(JSC::ReflectObject::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/RegExpConstructor.cpp:

(JSC::RegExpConstructor::finishCreation):
(JSC::constructRegExp):

  • Source/JavaScriptCore/runtime/RegExpConstructor.h:

(JSC::isRegExp):

  • Source/JavaScriptCore/runtime/RegExpObject.cpp:

(JSC::RegExpObject::finishCreation):

  • Source/JavaScriptCore/runtime/RegExpPrototype.cpp:

(JSC::RegExpPrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/RegExpStringIteratorPrototype.cpp:

(JSC::RegExpStringIteratorPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/RuntimeType.cpp:

(JSC::runtimeTypeForValue):

  • Source/JavaScriptCore/runtime/RuntimeType.h:
  • Source/JavaScriptCore/runtime/SamplingProfiler.cpp:

(JSC::SamplingProfiler::processUnverifiedStackTraces):
(JSC::SamplingProfiler::StackFrame::nameFromCallee):
(JSC::SamplingProfiler::reportTopBytecodes):

  • Source/JavaScriptCore/runtime/ScriptExecutable.cpp:

(JSC::ScriptExecutable::installCode):
(JSC::ScriptExecutable::hasClearableCode const):
(JSC::ScriptExecutable::newCodeBlockFor):
(JSC::ScriptExecutable::newReplacementCodeBlockFor):
(JSC::ScriptExecutable::prepareForExecutionImpl):
(JSC::ScriptExecutable::overrideLineNumber const):
(JSC::ScriptExecutable::typeProfilingStartOffset const):
(JSC::ScriptExecutable::typeProfilingEndOffset const):

  • Source/JavaScriptCore/runtime/ScriptExecutable.h:
  • Source/JavaScriptCore/runtime/SetConstructor.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/SetIteratorPrototype.cpp:

(JSC::SetIteratorPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/SetPrototype.cpp:

(JSC::SetPrototype::finishCreation):
(JSC::getSet):

  • Source/JavaScriptCore/runtime/ShadowRealmObject.cpp:

(JSC::ShadowRealmObject::finishCreation):

  • Source/JavaScriptCore/runtime/ShadowRealmPrototype.cpp:

(JSC::ShadowRealmPrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/SparseArrayValueMap.cpp:

(JSC::SparseArrayValueMap::putEntry):
(JSC::SparseArrayValueMap::putDirect):

  • Source/JavaScriptCore/runtime/StringIteratorPrototype.cpp:

(JSC::StringIteratorPrototype::finishCreation):

  • Source/JavaScriptCore/runtime/StringObject.cpp:

(JSC::StringObject::finishCreation):

  • Source/JavaScriptCore/runtime/StringPrototype.cpp:

(JSC::StringPrototype::finishCreation):
(JSC::replaceUsingRegExpSearch):
(JSC::replaceUsingStringSearch):
(JSC::replace):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/Structure.cpp:

(JSC::Structure::materializePropertyTable):
(JSC::Structure::holesMustForwardToPrototype const):
(JSC::Structure::flattenDictionaryStructure):

  • Source/JavaScriptCore/runtime/Structure.h:
  • Source/JavaScriptCore/runtime/StructureCache.cpp:

(JSC::StructureCache::emptyStructureForPrototypeFromBaseStructure):

  • Source/JavaScriptCore/runtime/StructureChain.cpp:

(JSC::StructureChain::create):
(JSC::StructureChain::finishCreation):

  • Source/JavaScriptCore/runtime/StructureInlines.h:

(JSC::Structure::create):
(JSC::Structure::get):
(JSC::Structure::prototypeChain const):
(JSC::Structure::isValid const):
(JSC::Structure::shouldConvertToPolyProto):

  • Source/JavaScriptCore/runtime/StructureRareData.cpp:

(JSC::StructureRareData::cacheSpecialPropertySlow):

  • Source/JavaScriptCore/runtime/Symbol.cpp:

(JSC::Symbol::finishCreation):

  • Source/JavaScriptCore/runtime/SymbolObject.cpp:

(JSC::SymbolObject::finishCreation):

  • Source/JavaScriptCore/runtime/SymbolPrototype.cpp:

(JSC::SymbolPrototype::finishCreation):
(JSC::tryExtractSymbol):
(JSC::JSC_DEFINE_CUSTOM_GETTER):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/TemporalCalendarPrototype.cpp:

(JSC::TemporalCalendarPrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::defaultMergeFields):

  • Source/JavaScriptCore/runtime/TemporalDuration.cpp:

(JSC::TemporalDuration::finishCreation):
(JSC::TemporalDuration::fromDurationLike):
(JSC::TemporalDuration::toTemporalDuration):
(JSC::TemporalDuration::from):

  • Source/JavaScriptCore/runtime/TemporalDurationPrototype.cpp:

(JSC::TemporalDurationPrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::JSC_DEFINE_CUSTOM_GETTER):

  • Source/JavaScriptCore/runtime/TemporalInstant.cpp:
  • Source/JavaScriptCore/runtime/TemporalInstantPrototype.cpp:

(JSC::TemporalInstantPrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::JSC_DEFINE_CUSTOM_GETTER):

  • Source/JavaScriptCore/runtime/TemporalNow.cpp:

(JSC::TemporalNow::finishCreation):

  • Source/JavaScriptCore/runtime/TemporalObject.cpp:

(JSC::createCalendarConstructor):
(JSC::createNowObject):
(JSC::createDurationConstructor):
(JSC::createInstantConstructor):
(JSC::createPlainDateConstructor):
(JSC::createPlainTimeConstructor):
(JSC::createTimeZoneConstructor):
(JSC::TemporalObject::finishCreation):

  • Source/JavaScriptCore/runtime/TemporalPlainDate.cpp:

(JSC::TemporalPlainDate::finishCreation):

  • Source/JavaScriptCore/runtime/TemporalPlainDateConstructor.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/TemporalPlainDatePrototype.cpp:

(JSC::TemporalPlainDatePrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::JSC_DEFINE_CUSTOM_GETTER):

  • Source/JavaScriptCore/runtime/TemporalPlainTime.cpp:

(JSC::TemporalPlainTime::finishCreation):
(JSC::getTemporalCalendarWithISODefault):
(JSC::TemporalPlainTime::from):
(JSC::TemporalPlainTime::with const):

  • Source/JavaScriptCore/runtime/TemporalPlainTimeConstructor.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/TemporalPlainTimePrototype.cpp:

(JSC::TemporalPlainTimePrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::JSC_DEFINE_CUSTOM_GETTER):

  • Source/JavaScriptCore/runtime/TemporalTimeZonePrototype.cpp:

(JSC::TemporalTimeZonePrototype::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/TestRunnerUtils.cpp:

(JSC::getExecutableForFunction):

  • Source/JavaScriptCore/runtime/ThrowScope.cpp:

(JSC::ThrowScope::throwException):

  • Source/JavaScriptCore/runtime/TypeProfilerLog.cpp:

(JSC::TypeProfilerLog::processLogEntries):

  • Source/JavaScriptCore/runtime/VM.cpp:

(JSC::VM::throwException):
(JSC::VM::callPromiseRejectionCallback):

  • Source/JavaScriptCore/runtime/WeakMapConstructor.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/WeakMapPrototype.cpp:

(JSC::WeakMapPrototype::finishCreation):
(JSC::getWeakMap):

  • Source/JavaScriptCore/runtime/WeakObjectRefPrototype.cpp:

(JSC::WeakObjectRefPrototype::finishCreation):
(JSC::getWeakRef):

  • Source/JavaScriptCore/runtime/WeakSetConstructor.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/runtime/WeakSetPrototype.cpp:

(JSC::WeakSetPrototype::finishCreation):
(JSC::getWeakSet):

  • Source/JavaScriptCore/tools/HeapVerifier.cpp:

(JSC::HeapVerifier::validateJSCell):
(JSC::HeapVerifier::reportCell):

  • Source/JavaScriptCore/tools/JSDollarVM.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::getExecutableForFunction):
(JSC::codeBlockFromArg):
(JSC::callWithStackSizeProbeFunction):
(JSC::JSC_DEFINE_HOST_FUNCTION_WITH_ATTRIBUTES):
(JSC::JSDollarVM::finishCreation):

  • Source/JavaScriptCore/tools/VMInspector.cpp:

(JSC::VMInspector::dumpCellMemoryToStream):

  • Source/JavaScriptCore/tools/VMInspector.h:
  • Source/JavaScriptCore/tools/VMInspectorInlines.h:

(JSC::VMInspector::verifyCellSize):
(JSC::VMInspector::verifyCell):

  • Source/JavaScriptCore/wasm/WasmGlobal.cpp:

(JSC::Wasm::Global::set):

  • Source/JavaScriptCore/wasm/WasmInstance.cpp:

(JSC::Wasm::Instance::setFunctionWrapper):
(JSC::Wasm::Instance::initElementSegment):

  • Source/JavaScriptCore/wasm/WasmOperations.cpp:

(JSC::Wasm::JSC_DEFINE_JIT_OPERATION):
(JSC::Wasm::setWasmTableElement):

  • Source/JavaScriptCore/wasm/WasmSlowPaths.cpp:

(JSC::LLInt::doWasmCallRef):
(JSC::LLInt::WASM_SLOW_PATH_DECL):

  • Source/JavaScriptCore/wasm/js/JSWebAssembly.cpp:

(JSC::JSWebAssembly::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/wasm/js/JSWebAssemblyException.cpp:

(JSC::JSWebAssemblyException::finishCreation):

  • Source/JavaScriptCore/wasm/js/JSWebAssemblyGlobal.cpp:

(JSC::JSWebAssemblyGlobal::finishCreation):

  • Source/JavaScriptCore/wasm/js/JSWebAssemblyHelpers.h:

(JSC::getWasmBufferFromValue):
(JSC::createSourceBufferFromValue):
(JSC::isWebAssemblyHostFunction):
(JSC::fromJSValue):

  • Source/JavaScriptCore/wasm/js/JSWebAssemblyInstance.cpp:

(JSC::JSWebAssemblyInstance::finishCreation):

  • Source/JavaScriptCore/wasm/js/JSWebAssemblyMemory.cpp:

(JSC::JSWebAssemblyMemory::finishCreation):

  • Source/JavaScriptCore/wasm/js/JSWebAssemblyModule.cpp:

(JSC::JSWebAssemblyModule::finishCreation):

  • Source/JavaScriptCore/wasm/js/JSWebAssemblyTable.cpp:

(JSC::JSWebAssemblyTable::finishCreation):

  • Source/JavaScriptCore/wasm/js/WebAssemblyCompileErrorPrototype.cpp:

(JSC::WebAssemblyCompileErrorPrototype::finishCreation):

  • Source/JavaScriptCore/wasm/js/WebAssemblyExceptionConstructor.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/wasm/js/WebAssemblyExceptionPrototype.cpp:

(JSC::WebAssemblyExceptionPrototype::finishCreation):
(JSC::getException):
(JSC::getTag):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/wasm/js/WebAssemblyFunctionBase.cpp:

(JSC::WebAssemblyFunctionBase::finishCreation):

  • Source/JavaScriptCore/wasm/js/WebAssemblyGlobalConstructor.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/wasm/js/WebAssemblyGlobalPrototype.cpp:

(JSC::getGlobal):
(JSC::WebAssemblyGlobalPrototype::finishCreation):

  • Source/JavaScriptCore/wasm/js/WebAssemblyInstanceConstructor.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/wasm/js/WebAssemblyInstancePrototype.cpp:

(JSC::getInstance):
(JSC::WebAssemblyInstancePrototype::finishCreation):

  • Source/JavaScriptCore/wasm/js/WebAssemblyLinkErrorPrototype.cpp:

(JSC::WebAssemblyLinkErrorPrototype::finishCreation):

  • Source/JavaScriptCore/wasm/js/WebAssemblyMemoryPrototype.cpp:

(JSC::getMemory):
(JSC::WebAssemblyMemoryPrototype::finishCreation):

  • Source/JavaScriptCore/wasm/js/WebAssemblyModuleConstructor.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/wasm/js/WebAssemblyModulePrototype.cpp:

(JSC::WebAssemblyModulePrototype::finishCreation):

  • Source/JavaScriptCore/wasm/js/WebAssemblyModuleRecord.cpp:

(JSC::WebAssemblyModuleRecord::finishCreation):
(JSC::WebAssemblyModuleRecord::initializeImports):
(JSC::WebAssemblyModuleRecord::initializeExports):
(JSC::WebAssemblyModuleRecord::evaluate):

  • Source/JavaScriptCore/wasm/js/WebAssemblyRuntimeErrorPrototype.cpp:

(JSC::WebAssemblyRuntimeErrorPrototype::finishCreation):

  • Source/JavaScriptCore/wasm/js/WebAssemblyTableConstructor.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/JavaScriptCore/wasm/js/WebAssemblyTablePrototype.cpp:

(JSC::getTable):
(JSC::JSC_DEFINE_HOST_FUNCTION):
(JSC::WebAssemblyTablePrototype::finishCreation):

  • Source/JavaScriptCore/wasm/js/WebAssemblyTagPrototype.cpp:

(JSC::WebAssemblyTagPrototype::finishCreation):
(JSC::getTag):

  • Source/JavaScriptCore/wasm/js/WebAssemblyWrapperFunction.cpp:

(JSC::WebAssemblyWrapperFunction::create):
(JSC::WebAssemblyWrapperFunction::finishCreation):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/WebKit/WebProcess/Automation/WebAutomationSessionProxy.cpp:

(WebKit::WebAutomationSessionProxy::setScriptObject):
(WebKit::WebAutomationSessionProxy::elementForNodeHandle):

  • Source/WebKit/WebProcess/InjectedBundle/InjectedBundle.cpp:

(WebKit::InjectedBundle::reportException):

  • Source/WebKit/WebProcess/WebPage/IPCTestingAPI.cpp:

(WebKit::IPCTestingAPI::encodeArgument):

  • Source/WebKit/WebProcess/WebPage/WebFrame.cpp:

(WebKit::WebFrame::counterValue):

  • Source/WebKitLegacy/mac/DOM/DOM.mm:

(+[DOMNode _nodeFromJSWrapper:]):

  • Source/WebKitLegacy/mac/WebView/WebFrame.mm:

(-[WebFrame _stringByEvaluatingJavaScriptFromString:withGlobalObject:inScriptWorld:]):

  • Source/WebKitLegacy/mac/WebView/WebView.mm:

(+[WebView _reportException:inContext:]):
(aeDescFromJSValue):

  • Source/WebKitLegacy/win/WebFrame.cpp:

(WebFrame::stringByEvaluatingJavaScriptInScriptWorld):

  • Source/WebKitLegacy/win/WebView.cpp:

(WebView::reportException):

  • Source/WebCore/Modules/webaudio/AudioWorkletGlobalScope.cpp:

(WebCore::AudioWorkletGlobalScope::registerProcessor):
(WebCore::AudioWorkletGlobalScope::createProcessor):

  • Source/WebCore/Modules/webaudio/AudioWorkletProcessor.cpp:

(WebCore::copyDataFromBusesToJSArray):
(WebCore::copyDataFromParameterMapToJSObject):
(WebCore::zeroJSArray):
(WebCore::AudioWorkletProcessor::buildJSArguments):

  • Source/WebCore/bindings/js/CommonVM.cpp:

(WebCore::lexicalFrameFromCommonVM):

  • Source/WebCore/bindings/js/DOMGCOutputConstraint.cpp:

(WebCore::DOMGCOutputConstraint::executeImplImpl):

  • Source/WebCore/bindings/js/IDBBindingUtilities.cpp:

(WebCore::get):
(WebCore::createIDBKeyFromValue):

  • Source/WebCore/bindings/js/InternalWritableStream.cpp:

(WebCore::invokeWritableStreamFunction):

  • Source/WebCore/bindings/js/JSCSSRuleListCustom.cpp:

(WebCore::JSCSSRuleListOwner::isReachableFromOpaqueRoots):

  • Source/WebCore/bindings/js/JSCallbackData.cpp:

(WebCore::JSCallbackData::invokeCallback):

  • Source/WebCore/bindings/js/JSCustomElementInterface.cpp:

(WebCore::constructCustomElementSynchronously):
(WebCore::JSCustomElementInterface::upgradeElement):
(WebCore::JSCustomElementInterface::invokeCallback):

  • Source/WebCore/bindings/js/JSCustomElementRegistryCustom.cpp:

(WebCore::getCustomElementCallback):
(WebCore::JSCustomElementRegistry::define):

  • Source/WebCore/bindings/js/JSDOMAbstractOperations.h:

(WebCore::isVisibleNamedProperty):
(WebCore::accessVisibleNamedProperty):

  • Source/WebCore/bindings/js/JSDOMAsyncIterator.h:

(WebCore::JSIterator>::next):
(WebCore::JSIterator>::runNextSteps):
(WebCore::JSIterator>::finishCreation):

  • Source/WebCore/bindings/js/JSDOMBuiltinConstructor.h:

(WebCore::JSDOMBuiltinConstructor<JSClass>::finishCreation):

  • Source/WebCore/bindings/js/JSDOMCastThisValue.h:

(WebCore::castThisValue):

  • Source/WebCore/bindings/js/JSDOMConstructor.h:

(WebCore::JSDOMConstructor<JSClass>::finishCreation):

  • Source/WebCore/bindings/js/JSDOMConstructorNotCallable.h:

(WebCore::JSDOMConstructorNotCallable<JSClass>::finishCreation):

  • Source/WebCore/bindings/js/JSDOMConstructorNotConstructable.h:

(WebCore::JSDOMConstructorNotConstructable<JSClass>::finishCreation):

  • Source/WebCore/bindings/js/JSDOMConvertBufferSource.h:

(WebCore::toPossiblySharedArrayBufferView):

  • Source/WebCore/bindings/js/JSDOMConvertCallbacks.h:

(WebCore::Converter<IDLCallbackFunction<T>>::convert):

  • Source/WebCore/bindings/js/JSDOMConvertDate.cpp:

(WebCore::valueToDate):

  • Source/WebCore/bindings/js/JSDOMConvertPromise.h:

(WebCore::Converter<IDLPromise<T>>::convert):

  • Source/WebCore/bindings/js/JSDOMConvertRecord.h:
  • Source/WebCore/bindings/js/JSDOMConvertScheduledAction.h:

(WebCore::Converter<IDLScheduledAction>::convert):

  • Source/WebCore/bindings/js/JSDOMConvertXPathNSResolver.h:

(WebCore::Converter<IDLInterface<XPathNSResolver>>::convert):

  • Source/WebCore/bindings/js/JSDOMExceptionHandling.cpp:

(WebCore::reportException):
(WebCore::retrieveErrorMessageWithoutName):
(WebCore::retrieveErrorMessage):

  • Source/WebCore/bindings/js/JSDOMGlobalObject.cpp:

(WebCore::JSC_DEFINE_HOST_FUNCTION):
(WebCore::JSDOMGlobalObject::finishCreation):
(WebCore::JSDOMGlobalObject::scriptExecutionContext const):
(WebCore::scriptModuleLoader):

  • Source/WebCore/bindings/js/JSDOMGlobalObject.h:

(WebCore::toJSDOMGlobalObject):

  • Source/WebCore/bindings/js/JSDOMGuardedObject.h:

(WebCore::DOMGuarded::guarded const):

  • Source/WebCore/bindings/js/JSDOMIterator.h:

(WebCore::iteratorForEach):
(WebCore::IteratorTraits>::next):
(WebCore::IteratorTraits>::finishCreation):

  • Source/WebCore/bindings/js/JSDOMLegacyFactoryFunction.h:

(WebCore::JSDOMLegacyFactoryFunction<JSClass>::finishCreation):

  • Source/WebCore/bindings/js/JSDOMMapLike.cpp:

(WebCore::clearBackingMap):
(WebCore::setToBackingMap):
(WebCore::forwardFunctionCallToBackingMap):
(WebCore::forwardForEachCallToBackingMap):

  • Source/WebCore/bindings/js/JSDOMMicrotask.cpp:

(WebCore::JSDOMMicrotask::run):

  • Source/WebCore/bindings/js/JSDOMPromise.cpp:

(WebCore::DOMPromise::whenPromiseIsSettled):

  • Source/WebCore/bindings/js/JSDOMPromiseDeferred.cpp:

(WebCore::createRejectedPromiseWithTypeError):

  • Source/WebCore/bindings/js/JSDOMPromiseDeferred.h:

(WebCore::callPromiseFunction):

  • Source/WebCore/bindings/js/JSDOMSetLike.cpp:

(WebCore::clearBackingSet):
(WebCore::addToBackingSet):
(WebCore::forwardFunctionCallToBackingSet):
(WebCore::forwardForEachCallToBackingSet):

  • Source/WebCore/bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::finishCreation):

  • Source/WebCore/bindings/js/JSDOMWindowCustom.cpp:

(WebCore::JSDOMWindow::queueMicrotask):
(WebCore::JSDOMWindow::toWrapped):

  • Source/WebCore/bindings/js/JSDOMWindowProperties.cpp:

(WebCore::JSDOMWindowProperties::finishCreation):
(WebCore::JSDOMWindowProperties::getOwnPropertySlot):

  • Source/WebCore/bindings/js/JSDOMWrapper.cpp:

(WebCore::JSDOMObject::JSDOMObject):

  • Source/WebCore/bindings/js/JSDeprecatedCSSOMValueCustom.cpp:

(WebCore::JSDeprecatedCSSOMValueOwner::isReachableFromOpaqueRoots):

  • Source/WebCore/bindings/js/JSDocumentCustom.h:

(JSC::JSCastingHelpers::InheritsTraits<WebCore::JSDocument>::inherits):

  • Source/WebCore/bindings/js/JSElementCustom.h:

(JSC::JSCastingHelpers::InheritsTraits<WebCore::JSElement>::inherits):

  • Source/WebCore/bindings/js/JSErrorHandler.cpp:

(WebCore::JSErrorHandler::handleEvent):

  • Source/WebCore/bindings/js/JSEventCustom.h:

(JSC::JSCastingHelpers::InheritsTraits<WebCore::JSEvent>::inherits):

  • Source/WebCore/bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::handleEvent):
(WebCore::JSEventListener::functionName const):

  • Source/WebCore/bindings/js/JSEventTargetCustom.cpp:

(WebCore::JSEventTarget::toWrapped):
(WebCore::jsEventTargetCast):

  • Source/WebCore/bindings/js/JSExecState.cpp:

(WebCore::executionContext):

  • Source/WebCore/bindings/js/JSNavigatorCustom.cpp:

(WebCore::JSNavigator::getUserMedia):

  • Source/WebCore/bindings/js/JSNodeCustom.cpp:

(WebCore::JSNode::pushEventHandlerScope const):

  • Source/WebCore/bindings/js/JSNodeCustom.h:

(JSC::JSCastingHelpers::InheritsTraits<WebCore::JSNode>::inherits):

  • Source/WebCore/bindings/js/JSNodeListCustom.cpp:

(WebCore::JSNodeListOwner::isReachableFromOpaqueRoots):

  • Source/WebCore/bindings/js/JSPluginElementFunctions.cpp:

(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::pluginElementCustomGetOwnPropertySlot):
(WebCore::pluginElementCustomPut):
(WebCore::JSC_DEFINE_HOST_FUNCTION):

  • Source/WebCore/bindings/js/JSReadableStreamSourceCustom.cpp:

(WebCore::JSReadableStreamSource::start):

  • Source/WebCore/bindings/js/JSShadowRealmGlobalScopeBase.cpp:

(WebCore::JSShadowRealmGlobalScopeBase::finishCreation):

  • Source/WebCore/bindings/js/JSWindowProxy.cpp:

(WebCore::JSWindowProxy::finishCreation):
(WebCore::JSWindowProxy::setWindow):
(WebCore::JSWindowProxy::wrapped const):
(WebCore::JSWindowProxy::toWrapped):

  • Source/WebCore/bindings/js/JSWorkerGlobalScopeBase.cpp:

(WebCore::JSWorkerGlobalScopeBase::finishCreation):

  • Source/WebCore/bindings/js/JSWorkerGlobalScopeCustom.cpp:

(WebCore::JSWorkerGlobalScope::queueMicrotask):

  • Source/WebCore/bindings/js/JSWorkletGlobalScopeBase.cpp:

(WebCore::JSWorkletGlobalScopeBase::finishCreation):

  • Source/WebCore/bindings/js/ReadableStream.cpp:

(WebCore::invokeReadableStreamFunction):
(WebCore::checkReadableStream):
(WebCore::ReadableStream::isDisturbed):

  • Source/WebCore/bindings/js/ReadableStream.h:

(WebCore::JSReadableStreamWrapperConverter::toWrapped):

  • Source/WebCore/bindings/js/ReadableStreamDefaultController.cpp:

(WebCore::invokeReadableStreamDefaultControllerFunction):

  • Source/WebCore/bindings/js/ScheduledAction.cpp:

(WebCore::ScheduledAction::executeFunctionInContext):

  • Source/WebCore/bindings/js/ScriptController.cpp:

(WebCore::ScriptController::evaluateModule):
(WebCore::ScriptController::callInWorld):
(WebCore::ScriptController::executeAsynchronousUserAgentScriptInWorld):

  • Source/WebCore/bindings/js/ScriptModuleLoader.cpp:

(WebCore::ScriptModuleLoader::fetch):
(WebCore::ScriptModuleLoader::evaluate):

  • Source/WebCore/bindings/js/SerializedScriptValue.cpp:

(WebCore::CloneSerializer::isArray):
(WebCore::CloneSerializer::isMap):
(WebCore::CloneSerializer::isSet):
(WebCore::CloneSerializer::getProperty):
(WebCore::CloneSerializer::toJSArrayBuffer):
(WebCore::CloneSerializer::dumpArrayBufferView):
(WebCore::CloneSerializer::dumpDOMPoint):
(WebCore::CloneSerializer::dumpDOMRect):
(WebCore::CloneSerializer::dumpDOMMatrix):
(WebCore::CloneSerializer::dumpIfTerminal):
(WebCore::CloneSerializer::serialize):
(WebCore::CloneDeserializer::CloneDeserializer):
(WebCore::CloneDeserializer::readArrayBufferViewImpl):
(WebCore::CloneDeserializer::readTerminal):

  • Source/WebCore/bindings/js/StructuredClone.cpp:

(WebCore::JSC_DEFINE_HOST_FUNCTION):

  • Source/WebCore/bindings/js/WindowProxy.cpp:

(WebCore::WindowProxy::clearJSWindowProxiesNotMatchingDOMWindow):

  • Source/WebCore/bindings/scripts/CodeGeneratorJS.pm:

(GeneratePut):
(GeneratePutByIndex):
(GenerateOverloadDispatcher):
(GenerateImplementation):
(GenerateAttributeSetterBodyDefinition):
(GenerateCallbackImplementationContent):
(GenerateConstructorHelperMethods):

  • Source/WebCore/bindings/scripts/test/JS/JSDOMWindow.cpp:

(WebCore::JSDOMWindowDOMConstructor::initializeProperties):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSDOMWindow::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSDedicatedWorkerGlobalScope.cpp:

(WebCore::JSDedicatedWorkerGlobalScopeDOMConstructor::initializeProperties):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):

  • Source/WebCore/bindings/scripts/test/JS/JSExposedStar.cpp:

(WebCore::JSExposedStar::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSExposedStar::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSExposedToWorkerAndWindow.cpp:

(WebCore::JSExposedToWorkerAndWindow::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSExposedToWorkerAndWindow::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSPaintWorkletGlobalScope.cpp:

(WebCore::JSPaintWorkletGlobalScopeDOMConstructor::initializeProperties):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):

  • Source/WebCore/bindings/scripts/test/JS/JSServiceWorkerGlobalScope.cpp:

(WebCore::JSServiceWorkerGlobalScopeDOMConstructor::initializeProperties):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):

  • Source/WebCore/bindings/scripts/test/JS/JSShadowRealmGlobalScope.cpp:

(WebCore::JSShadowRealmGlobalScopeDOMConstructor::initializeProperties):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSShadowRealmGlobalScope::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSSharedWorkerGlobalScope.cpp:

(WebCore::JSSharedWorkerGlobalScopeDOMConstructor::initializeProperties):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):

  • Source/WebCore/bindings/scripts/test/JS/JSTestCEReactions.cpp:

(WebCore::JSTestCEReactions::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::setJSTestCEReactions_stringifierAttributeSetter):
(WebCore::setJSTestCEReactions_stringifierAttributeNotNeededSetter):
(WebCore::JSTestCEReactions::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestCEReactionsStringifier.cpp:

(WebCore::JSTestCEReactionsStringifier::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestCEReactionsStringifier::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestCallTracer.cpp:

(WebCore::JSTestCallTracer::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestCallTracer::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestCallbackFunction.cpp:

(WebCore::JSTestCallbackFunction::JSTestCallbackFunction):

  • Source/WebCore/bindings/scripts/test/JS/JSTestCallbackFunctionRethrow.cpp:

(WebCore::JSTestCallbackFunctionRethrow::JSTestCallbackFunctionRethrow):

  • Source/WebCore/bindings/scripts/test/JS/JSTestCallbackFunctionWithThisObject.cpp:

(WebCore::JSTestCallbackFunctionWithThisObject::JSTestCallbackFunctionWithThisObject):

  • Source/WebCore/bindings/scripts/test/JS/JSTestCallbackFunctionWithTypedefs.cpp:

(WebCore::JSTestCallbackFunctionWithTypedefs::JSTestCallbackFunctionWithTypedefs):

  • Source/WebCore/bindings/scripts/test/JS/JSTestCallbackInterface.cpp:

(WebCore::JSTestCallbackInterface::JSTestCallbackInterface):

  • Source/WebCore/bindings/scripts/test/JS/JSTestClassWithJSBuiltinConstructor.cpp:

(WebCore::JSTestClassWithJSBuiltinConstructor::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestClassWithJSBuiltinConstructor::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestConditionalIncludes.cpp:

(WebCore::JSTestConditionalIncludes::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestConditionalIncludes::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestConditionallyReadWrite.cpp:

(WebCore::JSTestConditionallyReadWrite::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestConditionallyReadWrite::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestDOMJIT.cpp:

(WebCore::JSTestDOMJIT::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):

  • Source/WebCore/bindings/scripts/test/JS/JSTestDefaultToJSON.cpp:

(WebCore::JSTestDefaultToJSON::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestDefaultToJSON::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestDefaultToJSONFilteredByExposed.cpp:

(WebCore::JSTestDefaultToJSONFilteredByExposed::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestDefaultToJSONFilteredByExposed::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestDefaultToJSONIndirectInheritance.cpp:

(WebCore::JSTestDefaultToJSONIndirectInheritance::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):

  • Source/WebCore/bindings/scripts/test/JS/JSTestDefaultToJSONInherit.cpp:

(WebCore::JSTestDefaultToJSONInherit::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):

  • Source/WebCore/bindings/scripts/test/JS/JSTestDefaultToJSONInheritFinal.cpp:

(WebCore::JSTestDefaultToJSONInheritFinal::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):

  • Source/WebCore/bindings/scripts/test/JS/JSTestDelegateToSharedSyntheticAttribute.cpp:

(WebCore::JSTestDelegateToSharedSyntheticAttribute::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestDelegateToSharedSyntheticAttribute::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestDomainSecurity.cpp:

(WebCore::JSTestDomainSecurity::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestDomainSecurity::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:

(WebCore::JSTestEnabledBySetting::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestEnabledBySetting::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestEnabledForContext.cpp:

(WebCore::JSTestEnabledForContext::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestEnabledForContext::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestEventConstructor.cpp:

(WebCore::JSTestEventConstructor::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):

  • Source/WebCore/bindings/scripts/test/JS/JSTestEventTarget.cpp:

(WebCore::JSTestEventTarget::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestEventTarget::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestException.cpp:

(WebCore::JSTestException::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestException::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestGenerateAddOpaqueRoot.cpp:

(WebCore::JSTestGenerateAddOpaqueRoot::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestGenerateAddOpaqueRoot::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:

(WebCore::JSTestGenerateIsReachable::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestGenerateIsReachable::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestGlobalObject.cpp:

(WebCore::JSTestGlobalObjectDOMConstructor::initializeProperties):
(WebCore::JSTestGlobalObject::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestGlobalObject::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestIndexedSetterNoIdentifier.cpp:

(WebCore::JSTestIndexedSetterNoIdentifier::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestIndexedSetterNoIdentifier::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestIndexedSetterThrowingException.cpp:

(WebCore::JSTestIndexedSetterThrowingException::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestIndexedSetterThrowingException::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestIndexedSetterWithIdentifier.cpp:

(WebCore::JSTestIndexedSetterWithIdentifier::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestIndexedSetterWithIdentifier::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestInterface.cpp:

(WebCore::JSTestInterface::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestInterface::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestInterfaceLeadingUnderscore.cpp:

(WebCore::JSTestInterfaceLeadingUnderscore::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestInterfaceLeadingUnderscore::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestIterable.cpp:

(WebCore::JSTestIterable::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestIterable::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestJSBuiltinConstructor.cpp:

(WebCore::JSTestJSBuiltinConstructor::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):

  • Source/WebCore/bindings/scripts/test/JS/JSTestLegacyFactoryFunction.cpp:

(WebCore::JSTestLegacyFactoryFunction::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestLegacyFactoryFunction::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestLegacyNoInterfaceObject.cpp:

(WebCore::JSTestLegacyNoInterfaceObject::finishCreation):
(WebCore::JSTestLegacyNoInterfaceObject::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestLegacyOverrideBuiltIns.cpp:

(WebCore::JSTestLegacyOverrideBuiltIns::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestLegacyOverrideBuiltIns::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestMapLike.cpp:

(WebCore::JSTestMapLike::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestMapLike::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestMapLikeWithOverriddenOperations.cpp:

(WebCore::JSTestMapLikeWithOverriddenOperations::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestMapLikeWithOverriddenOperations::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedAndIndexedSetterNoIdentifier.cpp:

(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::finishCreation):
(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::put):
(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::putByIndex):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedAndIndexedSetterNoIdentifier::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedAndIndexedSetterThrowingException.cpp:

(WebCore::JSTestNamedAndIndexedSetterThrowingException::finishCreation):
(WebCore::JSTestNamedAndIndexedSetterThrowingException::put):
(WebCore::JSTestNamedAndIndexedSetterThrowingException::putByIndex):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedAndIndexedSetterThrowingException::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedAndIndexedSetterWithIdentifier.cpp:

(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::finishCreation):
(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::put):
(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::putByIndex):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedAndIndexedSetterWithIdentifier::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedDeleterNoIdentifier.cpp:

(WebCore::JSTestNamedDeleterNoIdentifier::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedDeleterNoIdentifier::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedDeleterThrowingException.cpp:

(WebCore::JSTestNamedDeleterThrowingException::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedDeleterThrowingException::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedDeleterWithIdentifier.cpp:

(WebCore::JSTestNamedDeleterWithIdentifier::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedDeleterWithIdentifier::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedDeleterWithIndexedGetter.cpp:

(WebCore::JSTestNamedDeleterWithIndexedGetter::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedDeleterWithIndexedGetter::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedGetterCallWith.cpp:

(WebCore::JSTestNamedGetterCallWith::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedGetterCallWith::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedGetterNoIdentifier.cpp:

(WebCore::JSTestNamedGetterNoIdentifier::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedGetterNoIdentifier::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedGetterWithIdentifier.cpp:

(WebCore::JSTestNamedGetterWithIdentifier::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedGetterWithIdentifier::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterNoIdentifier.cpp:

(WebCore::JSTestNamedSetterNoIdentifier::finishCreation):
(WebCore::JSTestNamedSetterNoIdentifier::put):
(WebCore::JSTestNamedSetterNoIdentifier::putByIndex):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedSetterNoIdentifier::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterThrowingException.cpp:

(WebCore::JSTestNamedSetterThrowingException::finishCreation):
(WebCore::JSTestNamedSetterThrowingException::put):
(WebCore::JSTestNamedSetterThrowingException::putByIndex):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedSetterThrowingException::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterWithIdentifier.cpp:

(WebCore::JSTestNamedSetterWithIdentifier::finishCreation):
(WebCore::JSTestNamedSetterWithIdentifier::put):
(WebCore::JSTestNamedSetterWithIdentifier::putByIndex):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedSetterWithIdentifier::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetter.cpp:

(WebCore::JSTestNamedSetterWithIndexedGetter::finishCreation):
(WebCore::JSTestNamedSetterWithIndexedGetter::put):
(WebCore::JSTestNamedSetterWithIndexedGetter::putByIndex):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedSetterWithIndexedGetter::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterWithIndexedGetterAndSetter.cpp:

(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::finishCreation):
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::put):
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::putByIndex):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedSetterWithIndexedGetterAndSetter::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterWithLegacyOverrideBuiltIns.cpp:

(WebCore::JSTestNamedSetterWithLegacyOverrideBuiltIns::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedSetterWithLegacyOverrideBuiltIns::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterWithLegacyUnforgeableProperties.cpp:

(WebCore::JSTestNamedSetterWithLegacyUnforgeableProperties::finishCreation):
(WebCore::JSTestNamedSetterWithLegacyUnforgeableProperties::put):
(WebCore::JSTestNamedSetterWithLegacyUnforgeableProperties::putByIndex):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedSetterWithLegacyUnforgeableProperties::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamedSetterWithLegacyUnforgeablePropertiesAndLegacyOverrideBuiltIns.cpp:

(WebCore::JSTestNamedSetterWithLegacyUnforgeablePropertiesAndLegacyOverrideBuiltIns::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestNamedSetterWithLegacyUnforgeablePropertiesAndLegacyOverrideBuiltIns::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamespaceConst.cpp:

(WebCore::JSTestNamespaceConst::finishCreation):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNamespaceObject.cpp:

(WebCore::JSTestNamespaceObject::finishCreation):

  • Source/WebCore/bindings/scripts/test/JS/JSTestNode.cpp:

(WebCore::JSTestNode::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):

  • Source/WebCore/bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::JSTestObj::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::setJSTestObj_putForwardsAttributeSetter):
(WebCore::setJSTestObj_putForwardsNullableAttributeSetter):
(WebCore::jsTestObjPrototypeFunction_overloadedMethodOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunction_overloadedMethodWithOptionalParameterOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunction_overloadedMethodWithDistinguishingUnionOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunction_overloadedMethodWith2DistinguishingUnionsOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunction_overloadedMethodWithNonDistinguishingUnionOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunction_overloadWithNullableUnionOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunction_overloadWithNullableNonDistinguishingParameterOverloadDispatcher):
(WebCore::jsTestObjPrototypeFunction_testPromiseOverloadedFunctionOverloadDispatcher):
(WebCore::JSTestObj::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestOperationConditional.cpp:

(WebCore::JSTestOperationConditional::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestOperationConditional::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:

(WebCore::JSTestOverloadedConstructorsDOMConstructor::construct):
(WebCore::JSTestOverloadedConstructors::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestOverloadedConstructors::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestOverloadedConstructorsWithSequence.cpp:

(WebCore::JSTestOverloadedConstructorsWithSequence::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestOverloadedConstructorsWithSequence::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestPluginInterface.cpp:

(WebCore::JSTestPluginInterface::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestPluginInterface::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestPromiseRejectionEvent.cpp:

(WebCore::JSTestPromiseRejectionEvent::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):

  • Source/WebCore/bindings/scripts/test/JS/JSTestReadOnlyMapLike.cpp:

(WebCore::JSTestReadOnlyMapLike::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestReadOnlyMapLike::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestReadOnlySetLike.cpp:

(WebCore::JSTestReadOnlySetLike::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestReadOnlySetLike::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestReportExtraMemoryCost.cpp:

(WebCore::JSTestReportExtraMemoryCost::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestReportExtraMemoryCost::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:

(WebCore::JSTestSerializedScriptValueInterface::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestSerializedScriptValueInterface::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestSetLike.cpp:

(WebCore::JSTestSetLike::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestSetLike::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestSetLikeWithOverriddenOperations.cpp:

(WebCore::JSTestSetLikeWithOverriddenOperations::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestSetLikeWithOverriddenOperations::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestStringifier.cpp:

(WebCore::JSTestStringifier::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestStringifier::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestStringifierAnonymousOperation.cpp:

(WebCore::JSTestStringifierAnonymousOperation::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestStringifierAnonymousOperation::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestStringifierNamedOperation.cpp:

(WebCore::JSTestStringifierNamedOperation::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestStringifierNamedOperation::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestStringifierOperationImplementedAs.cpp:

(WebCore::JSTestStringifierOperationImplementedAs::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestStringifierOperationImplementedAs::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestStringifierOperationNamedToString.cpp:

(WebCore::JSTestStringifierOperationNamedToString::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestStringifierOperationNamedToString::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestStringifierReadOnlyAttribute.cpp:

(WebCore::JSTestStringifierReadOnlyAttribute::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestStringifierReadOnlyAttribute::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestStringifierReadWriteAttribute.cpp:

(WebCore::JSTestStringifierReadWriteAttribute::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestStringifierReadWriteAttribute::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestTaggedWrapper.cpp:

(WebCore::JSTestTaggedWrapper::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestTaggedWrapper::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestTypedefs.cpp:

(WebCore::JSTestTypedefs::finishCreation):
(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSTestTypedefs::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSTestVoidCallbackFunction.cpp:

(WebCore::JSTestVoidCallbackFunction::JSTestVoidCallbackFunction):

  • Source/WebCore/bindings/scripts/test/JS/JSWorkerGlobalScope.cpp:

(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSWorkerGlobalScope::toWrapped):

  • Source/WebCore/bindings/scripts/test/JS/JSWorkletGlobalScope.cpp:

(WebCore::JSC_DEFINE_CUSTOM_GETTER):
(WebCore::JSWorkletGlobalScope::toWrapped):

  • Source/WebCore/bridge/objc/ObjCRuntimeObject.mm:

(JSC::Bindings::ObjCRuntimeObject::finishCreation):

  • Source/WebCore/bridge/objc/WebScriptObject.mm:

(-[WebScriptObject _isSafeScript]):
(-[WebScriptObject callWebScriptMethod:withArguments:]):
(-[WebScriptObject setValue:forKey:]):
(-[WebScriptObject setWebScriptValueAtIndex:value:]):
(+[WebScriptObject _convertValueToObjcValue:originRootObject:rootObject:]):

  • Source/WebCore/bridge/objc/objc_instance.mm:

(JSC::Bindings::ObjcInstance::getMethod):
(JSC::Bindings::ObjcInstance::invokeMethod):

  • Source/WebCore/bridge/objc/objc_runtime.mm:

(JSC::Bindings::ObjcFallbackObjectImp::finishCreation):
(JSC::Bindings::JSC_DEFINE_HOST_FUNCTION):

  • Source/WebCore/bridge/runtime_array.cpp:

(JSC::RuntimeArray::finishCreation):
(JSC::JSC_DEFINE_CUSTOM_GETTER):

  • Source/WebCore/bridge/runtime_method.cpp:

(JSC::RuntimeMethod::finishCreation):
(JSC::JSC_DEFINE_CUSTOM_GETTER):
(JSC::JSC_DEFINE_HOST_FUNCTION):

  • Source/WebCore/bridge/runtime_object.cpp:

(JSC::Bindings::RuntimeObject::finishCreation):
(JSC::Bindings::JSC_DEFINE_HOST_FUNCTION):

  • Source/WebCore/html/HTMLMediaElement.cpp:

(WebCore::controllerJSValue):
(WebCore::HTMLMediaElement::updateCaptionContainer):
(WebCore::HTMLMediaElement::ensureMediaControlsInjectedScript):
(WebCore::HTMLMediaElement::setControllerJSProperty):
(WebCore::HTMLMediaElement::didAddUserAgentShadowRoot):
(WebCore::HTMLMediaElement::updateMediaControlsAfterPresentationModeChange):
(WebCore::HTMLMediaElement::getCurrentMediaControlsStatus):

  • Source/WebCore/html/PDFDocument.cpp:

(WebCore::PDFDocument::sendPDFArrayBuffer):

  • Source/WebCore/inspector/InspectorController.cpp:

(WebCore::InspectorController::canAccessInspectedScriptState const):

  • Source/WebCore/inspector/InspectorFrontendAPIDispatcher.cpp:

(WebCore::InspectorFrontendAPIDispatcher::evaluateOrQueueExpression):

  • Source/WebCore/inspector/WebInjectedScriptHost.cpp:

(WebCore::WebInjectedScriptHost::subtype):
(WebCore::WebInjectedScriptHost::isHTMLAllCollection):

  • Source/WebCore/inspector/agents/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForEventListener):

  • Source/WebCore/page/Frame.cpp:

(WebCore::Frame::fromJSContext):
(WebCore::Frame::contentFrameFromWindowOrFrameElement):

  • Source/WebCore/page/WindowOrWorkerGlobalScope.cpp:

(WebCore::WindowOrWorkerGlobalScope::reportError):

  • Source/WebCore/testing/Internals.cpp:

(WebCore::Internals::parserMetaData):
(WebCore::Internals::cloneArrayBuffer):

  • Source/WebCore/workers/WorkerOrWorkletScriptController.cpp:

(WebCore::WorkerOrWorkletScriptController::loadAndEvaluateModule):
(WebCore::WorkerOrWorkletScriptController::initScriptWithSubclass):

  • Source/WebCore/worklets/PaintWorkletGlobalScope.cpp:

(WebCore::PaintWorkletGlobalScope::registerPaint):

Canonical link: https://commits.webkit.org/249694@main

4:26 PM Changeset in webkit [292928] by Brent Fulgham
  • 9 edits in trunk/Source/WebKit

Add new dyld support sandbox rules
https://bugs.webkit.org/show_bug.cgi?id=238389
<rdar://90593887>

Reviewed by Eric Carlson.

Update sandbox profiles to adopt a new dyld-related utility file
on platforms where it exists.

  • GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in:
  • NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
  • Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb.in:
  • Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb.in:
  • Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb.in:
  • Resources/SandboxProfiles/ios/com.apple.WebKit.adattributiond.sb.in:
  • WebProcess/com.apple.WebProcess.sb.in:
  • webpushd/mac/com.apple.WebKit.webpushd.sb.in:
4:25 PM Changeset in webkit [292927] by Karl Rackler
  • 2 edits in trunk/LayoutTests

[ Monterey wk2 ] 2 css-transforms tests are flaky failing
https://bugs.webkit.org/show_bug.cgi?id=239407

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
3:56 PM Changeset in webkit [292926] by sbarati@apple.com
  • 2 edits in trunk

Unreviewed. Add my github into to contributors.json.

  • metadata/contributors.json:
3:37 PM Changeset in webkit [292925] by Russell Epstein
  • 1 copy in tags/WebKit-7614.1.10.1

Tag WebKit-7614.1.10.1.

3:30 PM Changeset in webkit [292924] by Alan Coon
  • 3 edits in branches/safari-613-branch/Source/WebKit

Cherry-pick r292431. rdar://problem/90677955

Revert r291598
https://bugs.webkit.org/show_bug.cgi?id=238842
<rdar://90677955>

Reviewed by Geoff Garen.

It caused some problems and needs further analysis.

  • NetworkProcess/cocoa/NetworkSessionCocoa.mm: (WebKit::NetworkSessionCocoa::createWebSocketTask):

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

2:49 PM Changeset in webkit [292923] by graouts@webkit.org
  • 3 edits
    4 adds in trunk

WKWebView false positive when testing a.relList.supports("ar"), fails to open USDZ in AR QuickLook
https://bugs.webkit.org/show_bug.cgi?id=239135
<rdar://problem/91798041>

Reviewed by Tim Horton.

Source/WebCore:

Only return "true" for a.relList.supports("ar") when the SystemPreviewEnabled setting is "true".

Tests: system-preview/rel-ar-setting-disabled.html

system-preview/rel-ar-setting-enabled.html

  • html/HTMLAnchorElement.cpp:

(WebCore::HTMLAnchorElement::relList):

LayoutTests:

Add tests to check a.relList.supports("ar") returns the expected value based on
the SystemPreviewEnabled setting value.

  • system-preview/rel-ar-setting-disabled-expected.txt: Added.
  • system-preview/rel-ar-setting-disabled.html: Added.
  • system-preview/rel-ar-setting-enabled-expected.txt: Added.
  • system-preview/rel-ar-setting-enabled.html: Added.

Canonical link: https://commits.webkit.org/249690@main

2:43 PM Changeset in webkit [292922] by Karl Rackler
  • 2 edits in trunk/LayoutTests

[ Mac ] fast/css/counters/element-removal-crash.xhtml is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=239405

Unreviewed test gardening.

  • platform/mac/TestExpectations:
1:59 PM Changeset in webkit [292921] by Brent Fulgham
  • 2 edits in trunk/Source/WebKit

REGRESSION (r291843): Broken Netflix and Amazon video playback
https://bugs.webkit.org/show_bug.cgi?id=239397
<rdar://91313460>

Unreviewed revert of r291843.

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::adjustSettingsForCaptivePortal):

12:54 PM Changeset in webkit [292920] by mark.lam@apple.com
  • 3 edits in trunk/Source/JavaScriptCore

Apply purifyNaN in more places.
https://bugs.webkit.org/show_bug.cgi?id=239393

Reviewed by Saam Barati.

Also removed some unused functions.

  • wasm/WasmInstance.h:

(JSC::Wasm::Instance::loadI64Global const):
(JSC::Wasm::Instance::loadF32Global const): Deleted.
(JSC::Wasm::Instance::loadF64Global const): Deleted.

  • wasm/js/JSWebAssemblyHelpers.h:

(JSC::toJSValue):

12:04 PM Changeset in webkit [292919] by Russell Epstein
  • 1 copy in tags/WebKit-7614.1.9.5

Tag WebKit-7614.1.9.5.

12:00 PM Changeset in webkit [292918] by Russell Epstein
  • 9 edits in branches/safari-614.1.9-branch/Source

Versioning.

WebKit-7614.1.9.5

11:53 AM Changeset in webkit [292917] by Ross Kirsling
  • 2 edits in trunk/Tools

Fix parsePlatformFamily on bot watcher's dashboard.
https://bugs.webkit.org/show_bug.cgi?id=239394

Reviewed by Jonathan Bedard.

  • CISupport/build-webkit-org/public_html/dashboard/Scripts/Settings.js:

(Settings.prototype.parsePlatformFamily):
Allow for the "family of one" case.

Canonical link: https://commits.webkit.org/249686@main

11:45 AM Changeset in webkit [292916] by Russell Epstein
  • 14 edits in branches/safari-613-branch/Source

Apply patch. rdar://problem/84869202

11:08 AM Changeset in webkit [292915] by timothy_horton@apple.com
  • 2 edits in trunk/Source/WebCore

Non-fatal fault under RenderThemeIOS::paintAttachment due to use of dynamic UIColors
https://bugs.webkit.org/show_bug.cgi?id=239376
<rdar://88141235>

Reviewed by Wenson Hsieh.

No new tests; not observable except for the lack of os_log_fault,
which we currently don't capture.

  • rendering/RenderThemeIOS.mm:

(WebCore::attachmentTitleColor):
(WebCore::attachmentSubtitleColor):
(WebCore::RenderAttachmentInfo::RenderAttachmentInfo):
Make use of RenderThemeIOS's cache of system colors, instead of
retrieving them from UIColor directly, for <attachment> text colors.

This is important because we must avoid using dynamic UIColors in the
Web Content process directly (see r254373); this is just repairing
a small missing piece of that patch.

11:02 AM Changeset in webkit [292914] by timothy_horton@apple.com
  • 8 edits
    2 deletes in trunk/Source

Make it possible to adjust the final trait collection applied by LocalCurrentTraitCollection
https://bugs.webkit.org/show_bug.cgi?id=239375
rdar://problem/87115393

Reviewed by Wenson Hsieh.

Source/WebCore:

  • SourcesCocoa.txt:
  • WebCore.xcodeproj/project.pbxproj:
  • platform/ios/LocalCurrentTraitCollection.mm:

(WebCore::adjustedTraitCollection):
(WebCore::LocalCurrentTraitCollection::LocalCurrentTraitCollection):

  • platform/ios/WebCoreUIColorExtras.h: Removed.
  • platform/ios/WebCoreUIColorExtras.mm: Removed.
  • rendering/RenderThemeIOS.mm:

(WebCore::cssValueSystemColorInformationList):
(WebCore::systemColorFromCSSValueSystemColorInformation):
(WebCore::CSSValueSystemColorInformation::function): Deleted.
Partially revert r291564, and add an addition point for LocalCurrentTraitCollection instead.

Source/WebKit:

  • UIProcess/API/ios/WKWebViewIOS.mm:

(scrollViewBackgroundColor):

  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::contentViewBackgroundColor):

10:38 AM Changeset in webkit [292913] by J Pascoe
  • 38 edits in trunk

Source/WebCore:
[WebAuthn] Implement getTransports() and getAuthenticatorData() on AuthenticatorAttestationResponse
https://bugs.webkit.org/show_bug.cgi?id=238966
rdar://problem/91449906

This change implements the getTransports() and getAuthenticatorData() functions
on AuthenticatorAttestationResponse. For security keys, the supported transports of
the key are parsed from authenticatorGetInfo. For the local authenticator, the supported
transports are specified according to which features are available. getAuthenticatorData()
is a convenience method for RPs who want to avoid parsing CBOR.

Reviewed by Brent Fulgham.

  • Modules/webauthn/AuthenticatorAttestationResponse.cpp:

(WebCore::AuthenticatorAttestationResponse::create):
(WebCore::AuthenticatorAttestationResponse::AuthenticatorAttestationResponse):
(WebCore::AuthenticatorAttestationResponse::data const):
(WebCore::AuthenticatorAttestationResponse::getTransports const):
(WebCore::AuthenticatorAttestationResponse::getAuthenticatorData const):

  • Modules/webauthn/AuthenticatorAttestationResponse.h:
  • Modules/webauthn/AuthenticatorAttestationResponse.idl:
  • Modules/webauthn/AuthenticatorResponse.cpp:

(WebCore::AuthenticatorResponse::tryCreate):

  • Modules/webauthn/AuthenticatorResponse.h:
  • Modules/webauthn/AuthenticatorResponseData.h:

(WebCore::AuthenticatorResponseData::encode const):
(WebCore::AuthenticatorResponseData::decode):

  • Modules/webauthn/AuthenticatorTransport.h:
  • Modules/webauthn/AuthenticatorTransport.idl:
  • Modules/webauthn/WebAuthenticationConstants.h:
  • Modules/webauthn/WebAuthenticationUtils.cpp:

(WebCore::convertArrayBufferToVector):

  • Modules/webauthn/WebAuthenticationUtils.h:
  • Modules/webauthn/fido/AuthenticatorGetInfoResponse.cpp:

(fido::AuthenticatorGetInfoResponse::setTransports):
(fido::toStringVector):
(fido::encodeAsCBOR):

  • Modules/webauthn/fido/AuthenticatorGetInfoResponse.h:
  • Modules/webauthn/fido/DeviceResponseConverter.cpp:

(fido::convertStringToAuthenticatorTransport):
(fido::readCTAPMakeCredentialResponse):
(fido::readCTAPGetInfoResponse):

  • Modules/webauthn/fido/DeviceResponseConverter.h:
  • Modules/webauthn/fido/U2fResponseConverter.cpp:

(fido::readU2fRegisterResponse):

  • Modules/webauthn/fido/U2fResponseConverter.h:

(fido::readU2fRegisterResponse):

Source/WebKit:
[WebAuthn] Implement getTransports() and getAuthenticatorData() on AuthenticatorAttestationResponse
https://bugs.webkit.org/show_bug.cgi?id=238966
rdar://problem/91449906

This change implements the getTransports() and getAuthenticatorData() functions
on AuthenticatorAttestationResponse. For security keys, the supported transports of
the key are parsed from authenticatorGetInfo. For the local authenticator, the supported
transports are specified according to which features are available. getAuthenticatorData()
is a convenience method for RPs who want to avoid parsing CBOR.

Reviewed by Brent Fulgham.

  • Platform/spi/Cocoa/AuthenticationServicesCoreSPI.h:
  • UIProcess/API/Cocoa/_WKAuthenticatorAttestationResponse.h:
  • UIProcess/API/Cocoa/_WKAuthenticatorAttestationResponse.mm:

(-[_WKAuthenticatorAttestationResponse initWithClientDataJSON:rawId:extensions:attestationObject:attachment:transports:]):
(-[_WKAuthenticatorAttestationResponse initWithClientDataJSON:rawId:extensions:attestationObject:attachment:]): Deleted.

  • UIProcess/API/Cocoa/_WKAuthenticatorAttestationResponseInternal.h:
  • UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm:

(wkExtensionsClientOutputs):
(wkAuthenticatorAttestationResponse):
(wkAuthenticatorAssertionResponse):

  • UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm:

(WebKit::LocalAuthenticatorInternal::transports):
(WebKit::LocalAuthenticator::continueMakeCredentialAfterUserVerification):
(WebKit::LocalAuthenticator::continueMakeCredentialAfterAttested):

  • UIProcess/WebAuthentication/Cocoa/WebAuthenticatorCoordinatorProxy.mm:

(WebKit::toASCDescriptor):
(WebKit::toAuthenticatorTransports):
(WebKit::continueAfterRequest):

  • UIProcess/WebAuthentication/fido/CtapAuthenticator.cpp:

(WebKit::CtapAuthenticator::continueMakeCredentialAfterResponseReceived):
(WebKit::CtapAuthenticator::transports):

  • UIProcess/WebAuthentication/fido/CtapAuthenticator.h:
  • UIProcess/WebAuthentication/fido/CtapDriver.h:

(WebKit::CtapDriver::transport const):
(WebKit::CtapDriver::protocol const):
(WebKit::CtapDriver::CtapDriver):

  • UIProcess/WebAuthentication/fido/CtapHidDriver.cpp:

(WebKit::CtapHidDriver::CtapHidDriver):

  • UIProcess/WebAuthentication/fido/CtapNfcDriver.cpp:

(WebKit::CtapNfcDriver::CtapNfcDriver):

  • UIProcess/WebAuthentication/fido/U2fAuthenticator.cpp:

(WebKit::U2fAuthenticator::continueRegisterCommandAfterResponseReceived):

Tools:
[WebAuthn] Implement getTransports() and getAuthenticatorData() on AuthenticatorAttestationResponse
https://bugs.webkit.org/show_bug.cgi?id=238966
rdar://problem/91449906

Reviewed by Brent Fulgham.

Add tests for parsing transports from getInfo.

  • TestWebKitAPI/Tests/WebCore/CtapResponseTest.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebCore/FidoTestData.h:

LayoutTests:
[WebAuthn] Implement getTransports() and getAuthenticatorData() on AuthenticatorAttestationResponse
https://bugs.webkit.org/show_bug.cgi?id=238966
rdar://problem/91449906

Reviewed by Brent Fulgham.

Add getTransports() to test.

  • http/wpt/webauthn/public-key-credential-create-success-hid.https.html:
  • http/wpt/webauthn/resources/util.js:
10:23 AM Changeset in webkit [292912] by Simon Fraser
  • 16 edits
    1 copy in trunk/Source/WebKit

Use the ProcessTerminationReason enum for all the process types
https://bugs.webkit.org/show_bug.cgi?id=239372

Reviewed by Chris Dumez.

WebProcess, NetworkProcess and GPUProcess all had their own "termination reasons" enums.
Use ProcessTerminationReason for all of them (noting values that only apply to the web process).
Also provide a helper function to turn the reasons into a string.

  • Shared/ProcessTerminationReason.cpp: Copied from Source/WebKit/Shared/ProcessTerminationReason.h.

(WebKit::processTerminationReasonToString):

  • Shared/ProcessTerminationReason.h:
  • Sources.txt:
  • UIProcess/API/C/WKAPICast.h:

(WebKit::toAPI):

  • UIProcess/Cocoa/NavigationState.mm:

(WebKit::wkProcessTerminationReason):

  • UIProcess/GPU/GPUProcessProxy.cpp:

(WebKit::GPUProcessProxy::gpuProcessExited):
(WebKit::GPUProcessProxy::processIsReadyToExit):
(WebKit::GPUProcessProxy::didClose):
(WebKit::GPUProcessProxy::didFinishLaunching):
(WebKit::GPUProcessProxy::didBecomeUnresponsive):

  • UIProcess/GPU/GPUProcessProxy.h:
  • UIProcess/Network/NetworkProcessProxy.cpp:

(WebKit::NetworkProcessProxy::terminate):
(WebKit::NetworkProcessProxy::networkProcessDidTerminate):
(WebKit::NetworkProcessProxy::didClose):
(WebKit::NetworkProcessProxy::didFinishLaunching):
(WebKit::NetworkProcessProxy::didExceedMemoryLimit):

  • UIProcess/Network/NetworkProcessProxy.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::shouldReloadAfterProcessTermination):
(WebKit::WebPageProxy::gpuProcessExited):
(WebKit::processTerminationReasonToString): Deleted.

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::networkProcessDidTerminate):
(WebKit::WebProcessPool::gpuProcessExited):

  • UIProcess/WebProcessPool.h:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::gpuProcessExited):

  • UIProcess/WebProcessProxy.h:
  • WebKit.xcodeproj/project.pbxproj:
10:11 AM Changeset in webkit [292911] by Brandon
  • 4 edits in trunk/Source/WebCore

Parent Mismatch
https://bugs.webkit.org/show_bug.cgi?id=239390

Reviewed by Simon Fraser.

The oldParent and layer->parent() may be different under certain circumstances.
To account for this, we can just use the layer->parent() and remove the use
of oldParent. This also has the benefit of simplifying the moveLayers() function.

  • rendering/RenderElement.cpp:

(WebCore::RenderElement::moveLayers):

  • rendering/RenderElement.h:
  • rendering/RenderLayer.cpp:

(WebCore::RenderLayer::insertOnlyThisLayer):

9:24 AM Changeset in webkit [292910] by youenn@apple.com
  • 8 edits in trunk/Source/ThirdParty/libwebrtc

Rename libwebrtc ObjC NSString utility routines
https://bugs.webkit.org/show_bug.cgi?id=239287
<rdar://91431764>

Reviewed by Eric Carlson.

Add rtc prefix to NSString utility routines to prevent symbol collision.

  • Source/webrtc/sdk/objc/api/peerconnection/RTCRtpEncodingParameters.mm:

(-[RTCRtpEncodingParameters initWithNativeParameters:]):
(-[RTCRtpEncodingParameters nativeParameters]):

  • Source/webrtc/sdk/objc/api/peerconnection/RTCVideoCodecInfo+Private.mm:

(-[RTCVideoCodecInfo initWithNativeSdpVideoFormat:]):
(-[RTCVideoCodecInfo nativeSdpVideoFormat]):

  • Source/webrtc/sdk/objc/components/video_codec/RTCH264ProfileLevelId.mm:
  • Source/webrtc/sdk/objc/helpers/NSString+StdString.h:
  • Source/webrtc/sdk/objc/helpers/NSString+StdString.mm:

(-[NSString rtcStdString]):
(+[NSString rtcStdStringForString:]):
(+[NSString rtcStringForStdString:]):
(-[NSString stdString]): Deleted.
(+[NSString stdStringForString:]): Deleted.
(+[NSString stringForStdString:]): Deleted.

  • Source/webrtc/sdk/objc/native/src/objc_video_decoder_factory.mm:
  • Source/webrtc/sdk/objc/native/src/objc_video_encoder_factory.mm:
9:04 AM Changeset in webkit [292909] by Karl Rackler
  • 2 edits in trunk/LayoutTests

[ Monterey wk2 ] WebGL conformance tests are a flaky time out
https://bugs.webkit.org/show_bug.cgi?id=239388

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
8:41 AM Changeset in webkit [292908] by Karl Rackler
  • 2 edits in trunk/LayoutTests

[ Monterey wk2 debug ] WebGL conformance tests are a flaky time out
https://bugs.webkit.org/show_bug.cgi?id=239386

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
8:12 AM Changeset in webkit [292907] by youenn@apple.com
  • 5 edits
    1 add in trunk

Sandboxed iframe loads should match a service worker registration based on sandbox flags
https://bugs.webkit.org/show_bug.cgi?id=239379

Reviewed by Chris Dumez.

LayoutTests/imported/w3c:

  • web-platform-tests/service-workers/service-worker/sandboxed-iframe-fetch-event.https-expected.txt: Added.

Source/WebCore:

Coverdd by updated tests.

  • loader/DocumentLoader.cpp:

Sandboxed iframes have a null origin and should not be intercepted by service workers.

LayoutTests:

7:02 AM WebKitGTK/2.36.x edited by Michael Catanzaro
(diff)
6:53 AM Changeset in webkit [292906] by commit-queue@webkit.org
  • 6 edits
    17 adds in trunk/LayoutTests

Import css/css-sizing/aspect-ratio tests from WPT
https://bugs.webkit.org/show_bug.cgi?id=239378

Patch by Rob Buis <rbuis@igalia.com> on 2022-04-15
Reviewed by Tim Nguyen.

LayoutTests/imported/w3c:

Import based on SHA e0b8f9b500.

  • resources/resource-files.json:
  • web-platform-tests/css/css-sizing/aspect-ratio/flex-aspect-ratio-034-expected.xht: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/flex-aspect-ratio-034.html: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/flex-aspect-ratio-035-expected.xht: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/flex-aspect-ratio-035.html: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/flex-aspect-ratio-036-expected.xht: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/flex-aspect-ratio-036.html: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/flex-aspect-ratio-037-expected.xht: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/flex-aspect-ratio-037.html: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/flex-aspect-ratio-038-expected.xht: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/flex-aspect-ratio-038.html: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/fractional-aspect-ratio-expected.txt: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/fractional-aspect-ratio.html: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/intrinsic-size-011.html:
  • web-platform-tests/css/css-sizing/aspect-ratio/large-aspect-ratio-crash.html: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/replaced-element-035-expected.html: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/replaced-element-035-ref.html: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/replaced-element-035.html: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/select-element-001-ref.html: Added.
  • web-platform-tests/css/css-sizing/aspect-ratio/w3c-import.log:

LayoutTests:

6:15 AM Changeset in webkit [292905] by youenn@apple.com
  • 26 edits
    4 adds in trunk

ServiceWorker.postMessage() doesn't work from inside iframe
https://bugs.webkit.org/show_bug.cgi?id=213984
<rdar://problem/65203340>

Reviewed by Chris Dumez.

LayoutTests/imported/w3c:

  • web-platform-tests/service-workers/service-worker/about-blank-replacement.https-expected.txt:
  • web-platform-tests/service-workers/service-worker/client-url-of-blob-url-worker.https-expected.txt:
  • web-platform-tests/service-workers/service-worker/clients-matchall-blob-url-worker.https-expected.txt:

Source/WebCore:

postMessage was not working as we do not postMessage to a service worker if the source is not registered.
We now register service worker clients more aggresively and pass the client origin to better handle blob and about:blank clients.
We also add support for registering/unregistering worker clients when they get suspended/resumed.
To make sure a worker client is removed in failure case, WorkerScriptLoader is unregistering the service worker client if
the service worker data was not taken by its Worker.

Test: http/wpt/service-workers/about-blank-iframe.html

  • dom/Document.cpp:
  • loader/DocumentLoader.cpp:
  • workers/DedicatedWorkerThread.cpp:
  • workers/WorkerGlobalScope.cpp:
  • workers/WorkerGlobalScope.h:
  • workers/WorkerScriptLoader.cpp:
  • workers/service/SWClientConnection.h:
  • workers/service/WorkerSWClientConnection.cpp:
  • workers/service/WorkerSWClientConnection.h:

Source/WebKit:

Pass the full ClientOrigin when registering a service worker client.
Filter out clients that cannot be matched:

  • non HTTP/blob/about:blank clients
  • sandboxed HTTP clients
  • NetworkProcess/ServiceWorker/WebSWServerConnection.cpp:
  • NetworkProcess/ServiceWorker/WebSWServerConnection.h:
  • NetworkProcess/ServiceWorker/WebSWServerConnection.messages.in:
  • WebProcess/Storage/WebSWClientConnection.cpp:
  • WebProcess/Storage/WebSWClientConnection.h:

LayoutTests:

  • http/wpt/service-workers/about-blank-iframe-expected.txt: Added.
  • http/wpt/service-workers/about-blank-iframe-worker.js: Added.
  • http/wpt/service-workers/about-blank-iframe.html: Added.
  • http/tests/workers/service/client-added-to-clients-when-restored-from-page-cache.html:
  • http/tests/workers/service/client-removed-from-clients-while-in-page-cache-expected.txt:
  • http/tests/workers/service/client-removed-from-clients-while-in-page-cache.html:
  • http/tests/workers/service/other_resources/test.html:
  • http/tests/workers/service/resources/getClientIds-worker.js:
4:41 AM Changeset in webkit [292904] by Claudio Saavedra
  • 6 edits in trunk

[GTK] Default initialize GTK-specific print info in WebKit::PrintInfo
https://bugs.webkit.org/show_bug.cgi?id=196542

Reviewed by Adrian Perez de Castro.

Source/WebKit:

printInfoFromWKPrintInfo() will not initialize GTK-specific bits,
leading to problems down the road with IPC encoders, so add default values.

  • Shared/PrintInfo.h:

LayoutTests:

  • LayoutTests/platform/gtk/TestExpectations: Remove now passing tests
  • platform/gtk/editing/execCommand/print-expected.png: Update expectations
  • platform/gtk/editing/execCommand/print-expected.txt:
2:53 AM Changeset in webkit [292903] by zan@falconsigh.net
  • 4 edits in trunk/Source

[GTK][WPE] Remove exclusive build guards around GPU process preferences, code
https://bugs.webkit.org/show_bug.cgi?id=239331

Reviewed by Philippe Normand.

Source/WebKit:

  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::createGraphicsContextGL const):
Remove restrictive guards around the check for remote-WebGL execution,
only remaining guard being ENABLE(GPU_PROCESS).

Source/WTF:

  • Scripts/Preferences/WebPreferencesExperimental.yaml:

Make the UseGPUProcessForWebGLEnabled option also usable for the GTK and
WPE ports.

2:37 AM Changeset in webkit [292902] by graouts@webkit.org
  • 23 edits
    2 adds in trunk

[model] ASVInlinePreview objects don't get cleared when the model source changes
https://bugs.webkit.org/show_bug.cgi?id=239064
<rdar://problem/90391037>

Reviewed by Dean Jackson.

Source/WebCore:

Expose two new window.internals methods for tests to be able to query the list of UUIDs
currently loaded in the UI process and get the UUID for a given <model> element.

Test: model-element/model-element-inline-preview-deletion-upon-source-change.html

  • Modules/model-element/HTMLModelElement.cpp:

(WebCore::HTMLModelElement::inlinePreviewUUIDForTesting const):

  • Modules/model-element/HTMLModelElement.h:
  • Modules/model-element/HTMLModelElement.idl:
  • Modules/model-element/ModelPlayer.cpp:

(WebCore::ModelPlayer::inlinePreviewUUIDForTesting const):

  • Modules/model-element/ModelPlayer.h:
  • loader/FrameLoaderClient.h:
  • testing/Internals.cpp:

(WebCore::Internals::modelInlinePreviewUUIDs const):
(WebCore::Internals::modelInlinePreviewUUIDForModelElement const):

  • testing/Internals.h:
  • testing/Internals.idl:

Source/WebKit:

We add a new ModelElementDestroyRemotePreview message going from the Web process to the
UI process to notify that an ASVInlinePreview with a given UUID should be cleared. This
message is sent via ~ARKitInlinePreviewModelPlayerMac since any unused resource will
trigger the destruction of such objects.

For testing purposes, we also add a new ModelInlinePreviewUUIDs message going from the
Web process to the UI process to retreive the list of UUIDs for the ASVInlinePreview
objects currently loaded in the UI process. This will allow tests to check whether
the UUID for a given <model> element is correctly removed from the UI process.

  • UIProcess/Cocoa/ModelElementControllerCocoa.mm:

(WebKit::ModelElementController::modelElementDestroyRemotePreview):
(WebKit::ModelElementController::inlinePreviewUUIDs):

  • UIProcess/ModelElementController.h:
  • UIProcess/WebPageProxy.cpp:

(WebKit::WebPageProxy::modelElementDestroyRemotePreview):
(WebKit::WebPageProxy::modelInlinePreviewUUIDs):

  • UIProcess/WebPageProxy.h:
  • UIProcess/WebPageProxy.messages.in:
  • WebProcess/Model/mac/ARKitInlinePreviewModelPlayerMac.h:
  • WebProcess/Model/mac/ARKitInlinePreviewModelPlayerMac.mm:

(WebKit::ARKitInlinePreviewModelPlayerMac::~ARKitInlinePreviewModelPlayerMac):
(WebKit::ARKitInlinePreviewModelPlayerMac::inlinePreviewUUIDForTesting const):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.cpp:

(WebKit::WebFrameLoaderClient::modelInlinePreviewUUIDs const):

  • WebProcess/WebCoreSupport/WebFrameLoaderClient.h:

LayoutTests:

Add a new test which loads a <model> element with a valid resource, checks its UUID against
those loaded in the UI process, and then removes the <model> source to check that same UUID
is not longer loaded.

This test is currently disabled on OpenSource bots.

  • model-element/model-element-inline-preview-deletion-upon-source-change-expected.txt: Added.
  • model-element/model-element-inline-preview-deletion-upon-source-change.html: Added.
  • platform/ios/TestExpectations:
  • platform/mac/TestExpectations:

Apr 14, 2022:

11:08 PM Changeset in webkit [292901] by Martin Robinson
  • 3 edits in trunk/Source/WebCore

[GTK] AddressSanitizer: heap-buffer-overflow in WebCore::Length::ref()
https://bugs.webkit.org/show_bug.cgi?id=237389

Reviewed by Žan Doberšek.

  • platform/graphics/nicosia/NicosiaAnimation.cpp:

(Nicosia::createThreadsafeKeyFrames): Convert Length members of transform functions to
the fixed variety before they are moved to separate threads.
(Nicosia::Animation::Animation): Use the new helper.

  • platform/graphics/transforms/TranslateTransformOperation.h: Added setters.
10:54 PM Changeset in webkit [292900] by zan@falconsigh.net
  • 2 edits in trunk/Source/WebCore

Unreviewed build fix for GTK and WPE.

  • platform/graphics/gbm/DMABufFormat.h: Add a missing <array> header include.
10:44 PM Changeset in webkit [292899] by Chris Dumez
  • 25 edits in trunk/Source/WebCore

Use WebCoreBuiltinNames when possible
https://bugs.webkit.org/show_bug.cgi?id=239361

Reviewed by Yusuke Suzuki.

Use WebCoreBuiltinNames when possible to avoid unnecessary calls to Identifier::fromString().
This is more efficient.

  • Modules/encryptedmedia/legacy/LegacyCDMSessionClearKey.cpp:

(WebCore::CDMSessionClearKey::update):

  • bindings/js/JSDOMGlobalObject.cpp:

(WebCore::JSDOMGlobalObject::addBuiltinGlobals):

  • bindings/js/JSDOMMapLike.cpp:

(WebCore::getBackingMap):

  • bindings/js/JSDOMSetLike.cpp:

(WebCore::getBackingSet):

  • bindings/js/JSDOMWindowBase.cpp:

(WebCore::JSDOMWindowBase::initStaticGlobals):
(WebCore::JSDOMWindowBase::finishCreation):
(WebCore::JSDOMWindowBase::updateDocument):

  • bindings/js/JSDOMWindowCustom.cpp:

(WebCore::jsDOMWindowGetOwnPropertySlotRestrictedAccess):
(WebCore::JSDOMWindow::getOwnPropertySlot):
(WebCore::JSDOMWindow::put):
(WebCore::addCrossOriginPropertyNames):
(WebCore::JSDOMWindow::defineOwnProperty):
(WebCore::JSDOMWindow::setOpener):
(WebCore::JSDOMWindow::openDatabase const):
(WebCore::JSDOMWindow::setOpenDatabase):

  • bindings/js/JSEventListener.cpp:

(WebCore::JSEventListener::handleEvent):

  • bindings/js/JSLocationCustom.cpp:

(WebCore::getOwnPropertySlotCommon):
(WebCore::JSLocation::put):

  • bindings/js/JSRemoteDOMWindowCustom.cpp:

(WebCore::JSRemoteDOMWindow::put):

  • bindings/js/ReadableStream.cpp:

(WebCore::ReadableStream::create):
(WebCore::ReadableStream::lock):

  • bindings/js/ScriptController.cpp:

(WebCore::ScriptController::setupModuleScriptHandlers):

  • bindings/js/ScriptModuleLoader.cpp:

(WebCore::rejectToPropagateNetworkError):
(WebCore::rejectWithFetchError):

  • bindings/js/WebCoreBuiltinNames.h:
  • bindings/js/WebCoreJSClientData.h:

(WebCore::webCoreBuiltinNames):

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateImplementation):

  • bindings/scripts/test/JS/JSDOMWindow.cpp:

(WebCore::JSDOMWindow::finishCreation):

  • bindings/scripts/test/JS/JSTestConditionallyReadWrite.cpp:

(WebCore::JSTestConditionallyReadWritePrototype::finishCreation):
(WebCore::JSTestConditionallyReadWrite::finishCreation):

  • bindings/scripts/test/JS/JSTestEnabledBySetting.cpp:

(WebCore::JSTestEnabledBySetting::finishCreation):

  • bindings/scripts/test/JS/JSTestEnabledForContext.cpp:

(WebCore::JSTestEnabledForContext::finishCreation):

  • bindings/scripts/test/JS/JSTestGlobalObject.cpp:

(WebCore::JSTestGlobalObject::finishCreation):

  • bindings/scripts/test/JS/JSTestObj.cpp:

(WebCore::JSTestObjPrototype::finishCreation):

  • html/HTMLMediaElement.cpp:

(WebCore::controllerJSValue):
(WebCore::HTMLMediaElement::didAddUserAgentShadowRoot):

  • testing/Internals.cpp:

(WebCore::Internals::cloneArrayBuffer):

  • workers/WorkerOrWorkletScriptController.cpp:

(WebCore::WorkerOrWorkletScriptController::loadModuleSynchronously):
(WebCore::WorkerOrWorkletScriptController::loadAndEvaluateModule):

6:45 PM Changeset in webkit [292898] by Wenson Hsieh
  • 20 edits in trunk

Undo option after invoking "Markup Image" says "Undo Paste"
https://bugs.webkit.org/show_bug.cgi?id=239351
rdar://91647863

Reviewed by Darin Adler.

Source/WebCore:

Add plumbing to allow a caller of Editor::replaceNodeFromPasteboard to specify an EditAction for the editing
command that is not just EditAction::Paste, and use it to supply a more specific edit action type of
MarkupImage in the case where "Markup Image" is used to replace an image element with other image data. This
allows the undo/redo title to be more accurate than simply "Undo/Redo Paste".

Test: ImageAnalysisTests.PerformImageAnalysisMarkup

  • dom/TextEvent.cpp:

(WebCore::TextEvent::createForPlainTextPaste):
(WebCore::TextEvent::createForFragmentPaste):
(WebCore::TextEvent::TextEvent):

  • dom/TextEvent.h:
  • dom/TextEventInputType.h:

Introduce TextEventInputMarkup. This is used to preserve the fact that a TextEvent was triggered via
"Markup Image" as opposed to a regular "Paste" command, when plumbing this event object through DOM event
propagation code. Once it reenters editing code, we consult this type to re-map this event to
EditAction::MarkupImage if appropriate.

I opted for this (slightly more roundabout) approach to prevent a potential layering violation, due to TextEvent
otherwise knowing about EditAction.

  • editing/EditAction.cpp:

(WebCore::undoRedoLabel):

  • editing/EditAction.h:

Introduce EditAction::MarkupImage. Additionally, alphabetically sort these enum types.

  • editing/Editor.cpp:

(WebCore::Editor::handleTextEvent):
(WebCore::Editor::pasteAsFragment):
(WebCore::Editor::replaceSelectionWithFragment):

  • editing/Editor.h:
  • editing/cocoa/EditorCocoa.mm:

(WebCore::Editor::replaceNodeFromPasteboard):

Add an EditAction argument; by default, this is EditAction::Paste.

  • en.lproj/Localizable.strings:

Add a new localized string to represent the name of the "Markup Image" item, for the purposes of setting the
Redo/Undo action title.

Source/WebKit:

Rename replaceWithPasteboardData to the more specific replaceImageWithMarkupResults. This method was
introduced (and is currently only used) to drive image replacement using "Markup Image"; giving this method a
more specific name allows us to hard-code EditAction::MarkupImage when calling into Editor to carry out the
replacement editing action in WebPage::replaceImageWithMarkupResults.

See WebCore/ChangeLog for additional details.

  • UIProcess/Cocoa/WebPageProxyCocoa.mm:

(WebKit::WebPageProxy::replaceImageWithMarkupResults):
(WebKit::WebPageProxy::replaceWithPasteboardData): Deleted.

  • UIProcess/WebPageProxy.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView imageAnalysisMarkupMenu]):

  • UIProcess/mac/WebContextMenuProxyMac.mm:

(WebKit::WebContextMenuProxyMac::applyMarkupToControlledImage):

  • WebProcess/WebPage/Cocoa/WebPageCocoa.mm:

(WebKit::WebPage::replaceImageWithMarkupResults):
(WebKit::WebPage::replaceWithPasteboardData): Deleted.

  • WebProcess/WebPage/WebPage.h:
  • WebProcess/WebPage/WebPage.messages.in:

Tools:

Augment an existing API test to verify that the resulting undo action title after invoking "Markup Image" is not
"Undo Paste".

  • TestWebKitAPI/Tests/WebKitCocoa/ImageAnalysisTests.mm:

(TestWebKitAPI::TEST):

5:27 PM Changeset in webkit [292897] by Matteo Flores
  • 4 edits in trunk/LayoutTests

EXPECTATIONS: [ Monterey wk2 ] 7 /paymentrequest/* tests are constant text failures https://bugs.webkit.org/show_bug.cgi?id=238908 Unreviewed test gardening. * TestExpectations: * platform/ios-wk2/TestExpectations: * platform/mac-wk2/TestExpectations:

5:21 PM Changeset in webkit [292896] by Wenson Hsieh
  • 2 edits in trunk/Source/WebKit

Unreviewed, fix the Catalyst build after r292888

MCProfileConnection is not available on Mac Catalyst.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _dataOwnerForPasteboard:]):

4:39 PM Changeset in webkit [292895] by caitp@igalia.com
  • 8 edits
    3 adds in trunk

[JSC] ShadowRealm global object has a mutable prototype
https://bugs.webkit.org/show_bug.cgi?id=239332

Reviewed by Yusuke Suzuki.

JSTests:

  • stress/shadow-realm-globalThis-mutable-prototype.js: Added.

Source/JavaScriptCore:

This patch circumvents the ASSERT(toThis() == this) in JSObject::setPrototypeWithCycleCheck()
when this is a GlobalObject. Ordinarily, GlobalObjects have the IsImmutablePrototypeExoticObject
bit set and miss this pathway, however this is not the case for ShadowRealm Global Objects.

In addition, the JSC internal version is also modified to have a mutable prototype in the same way
as in WebCore.

  • runtime/JSGlobalObject.h:

(JSC::JSGlobalObject::deriveShadowRealmGlobalObject):
(JSC::JSGlobalObject::createStructureForShadowRealm):

  • runtime/JSObject.cpp:

(JSC::JSObject::setPrototypeWithCycleCheck):

Source/WebCore:

Hack: The IDL code generator now special cases ShadowRealmGlobalObject to remove the
ImmutablePrototypeExoticObject bit from the inherited JSGlobalObject structure flags.

As a result, this enables the assignment of a ShadowRealm's globalThis.proto, or
overwriting the prototype with [Object / Reflect].setPrototypeOf().

Test: js/ShadowRealm-globalThis.html

  • bindings/scripts/CodeGeneratorJS.pm:

(GenerateHeader):

  • bindings/scripts/test/JS/JSShadowRealmGlobalScope.h:

LayoutTests:

Add a new layout test to verify changes to verify that ShadowRealmGlobalObject has a properly
mutable prototype.

  • js/ShadowRealm-globalThis-expected.txt: Added.
  • js/ShadowRealm-globalThis.html: Added.
4:36 PM Changeset in webkit [292894] by Jenner@apple.com
  • 2 edits in trunk/Tools

Add an additional system to unsafe-merge queue
https://bugs.webkit.org/show_bug.cgi?id=239354

Reviewed by Ryan Haddad.

  • CISupport/ews-build/config.json:
4:32 PM Changeset in webkit [292893] by Nikos Mouchtaris
  • 15 edits in trunk

calc(): Serialize top level min/max/hypot as calc()
https://bugs.webkit.org/show_bug.cgi?id=239019

Reviewed by Darin Adler.

LayoutTests/imported/w3c:

  • web-platform-tests/css/css-values/hypot-pow-sqrt-invalid-expected.txt:
  • web-platform-tests/css/css-values/hypot-pow-sqrt-serialize-expected.txt:
  • web-platform-tests/css/css-values/minmax-angle-serialize-expected.txt:
  • web-platform-tests/css/css-values/minmax-length-percent-serialize-expected.txt:
  • web-platform-tests/css/css-values/minmax-length-serialize-expected.txt:
  • web-platform-tests/css/css-values/minmax-number-serialize-expected.txt:
  • web-platform-tests/css/css-values/minmax-percentage-serialize-expected.txt:
  • web-platform-tests/css/css-values/minmax-time-serialize-expected.txt:

Source/WebCore:

For functions that would have no effect on the top level value, serialize as calc() rather
than the function.

  • css/calc/CSSCalcOperationNode.cpp:

(WebCore::CSSCalcOperationNode::simplifyNode):

  • css/calc/CSSCalcOperationNode.h:

LayoutTests:

  • fast/css/calc-parsing-expected.txt:
  • fast/css/calc-parsing.html:
4:26 PM Changeset in webkit [292892] by gnavamarino@apple.com
  • 2 edits in trunk/Source/WebCore

WebCore::WorkerStorageConnection::fileSystemGetDirectory could have invalid storageConnection()
https://bugs.webkit.org/show_bug.cgi?id=239355

Reviewed by Sihui Liu.

Add a check since storageConnection() can be invalid at this point.

  • Modules/storage/WorkerStorageConnection.cpp:

(WebCore::WorkerStorageConnection::fileSystemGetDirectory):

2:56 PM Changeset in webkit [292891] by ysuzuki@apple.com
  • 10 edits in trunk/Source

[JSC] Reduce use of CallFrame::deprecatedVM
https://bugs.webkit.org/show_bug.cgi?id=239326

Reviewed by Devin Rousso.

Reduce use of CallFrame::deprecatedVM, mainly in inspector related code to eventually remove CallFrame::deprecatedVM.

  • Source/JavaScriptCore/debugger/Debugger.cpp:

(JSC::Debugger::evaluateBreakpointCondition):
(JSC::Debugger::evaluateBreakpointActions):
(JSC::Debugger::exceptionOrCaughtValue):

  • Source/JavaScriptCore/debugger/DebuggerCallFrame.cpp:

(JSC::DebuggerCallFrame::globalObject):
(JSC::DebuggerCallFrame::functionName const):
(JSC::DebuggerCallFrame::scope):
(JSC::DebuggerCallFrame::type const):
(JSC::DebuggerCallFrame::evaluateWithScopeExtension):
(JSC::DebuggerCallFrame::deprecatedVMEntryGlobalObject const): Deleted.

  • Source/JavaScriptCore/debugger/DebuggerCallFrame.h:
  • Source/JavaScriptCore/inspector/JSJavaScriptCallFrame.cpp:

(Inspector::JSJavaScriptCallFrame::evaluateWithScopeExtension):
(Inspector::JSJavaScriptCallFrame::scopeDescriptions):
(Inspector::JSJavaScriptCallFrame::functionName const):
(Inspector::JSJavaScriptCallFrame::scopeChain const):
(Inspector::JSJavaScriptCallFrame::type const):

  • Source/JavaScriptCore/inspector/JavaScriptCallFrame.h:

(Inspector::JavaScriptCallFrame::functionName const):
(Inspector::JavaScriptCallFrame::type const):
(Inspector::JavaScriptCallFrame::scopeChain const):
(Inspector::JavaScriptCallFrame::evaluateWithScopeExtension const):
(Inspector::JavaScriptCallFrame::deprecatedVMEntryGlobalObject const): Deleted.

  • Source/JavaScriptCore/inspector/agents/InspectorDebuggerAgent.cpp:

(Inspector::InspectorDebuggerAgent::debuggerScopeExtensionObject):
(Inspector::InspectorDebuggerAgent::didPause):

  • Source/JavaScriptCore/interpreter/Interpreter.cpp:

(JSC::Interpreter::debug):

Canonical link: https://commits.webkit.org/249661@main

2:15 PM Changeset in webkit [292890] by Jonathan Bedard
  • 6 edits in trunk/Tools

[git-webkit] Personal branch is "not a PR branch"
https://bugs.webkit.org/show_bug.cgi?id=239329
<rdar://problem/91756286>

Reviewed by Yusuke Suzuki.

  • Tools/Scripts/libraries/webkitscmpy/setup.py: Bump version.
  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/init.py: Ditto.
  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/local/git.py:

(Git.branches_for): Provide optional caching.

  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/branch.py:

(Branch.editable): If a branch does not exist on production remotes, that branch
should also be considered a PR branch.

  • Tools/Scripts/libraries/webkitscmpy/webkitscmpy/program/pull_request.py:

(PullRequest.main): Only create a new PR branch if the current branch is a
production branch.

Canonical link: https://commits.webkit.org/249660@main

2:00 PM Changeset in webkit [292889] by Jonathan Bedard
  • 2 edits in trunk/Websites/webkit.org

[webkit.org] Remove leading r from archive revisions
https://bugs.webkit.org/show_bug.cgi?id=239322
<rdar://problem/91735590>

Reviewed by Ryan Haddad.

  • Websites/webkit.org/wp-content/themes/webkit/build-archives.php: Remove leading 'r' from revisions,

since "revisions" will now be identifiers.

Canonical link: https://commits.webkit.org/249659@main

1:58 PM Changeset in webkit [292888] by Wenson Hsieh
  • 7 edits in trunk

[iOS] [WK2] Managed pasteboard should function for all managed domains
https://bugs.webkit.org/show_bug.cgi?id=239319
rdar://80059355

Reviewed by Kate Cheney.

Source/WebCore/PAL:

Add an SPI method on MCProfileConnection.

  • pal/spi/ios/ManagedConfigurationSPI.h:

Source/WebKit:

Unless a WebKit client has specified a data owner for the web view that is not _UIDataOwnerUndefined, fall back
to _UIDataOwnerEnterprise when the current domain of the WKWebView is managed (that is, `-[MCProfileConnection
isURLManaged:]` returns YES for the web view's current URL). This allows managed pasteboard to work for all
WebKit clients, if the current URL is managed.

Test: UIPasteboardTests.PerformAsDataOwnerWithManagedURL

  • Platform/spi/ios/UIKitSPI.h:

Drive-by fix: move the staged declarations of -_dataOwnerForCopy and -_dataOwnerForPaste out of the IPI
section, and into the non-internal SDK section.

  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView _dataOwnerForPasteboard:]):

Tools:

Add a new API test to verify that we fall back to consulting -[MCProfileConnection isURLManaged:] when
determining the data owner for copy and paste, unless a data owner is already explicitly set on a view in the
responder chain (specifically, the WKWebView).

  • TestWebKitAPI/Tests/ios/UIPasteboardTests.mm:

(+[TestUIPasteboard _performAsDataOwner:block:]):
(-[TestMCProfileConnection isURLManaged:]):
(TestWebKitAPI::TEST):

1:35 PM Changeset in webkit [292887] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Require an existing AtomString for HTMLFormElement's named getter parameter
https://bugs.webkit.org/show_bug.cgi?id=239335

Reviewed by Darin Adler.

Require an existing AtomString for HTMLFormElement's named getter parameter. There is no point
in allocating a new AtomString as the AtomString should already exist if there is any element
with this name / id.

  • html/HTMLFormElement.cpp:

(WebCore::HTMLFormElement::namedElements):

  • html/HTMLFormElement.idl:
1:19 PM Changeset in webkit [292886] by Alexey Shvayka
  • 2 edits in trunk/Source/JavaScriptCore

InternalFunction::createSubclassStructure() should use base object's global object
https://bugs.webkit.org/show_bug.cgi?id=239346

Unreviewed, account for offline feedback by Yusuke Suzuki.

  • runtime/InternalFunction.cpp:

(JSC::InternalFunction::createSubclassStructure):

12:52 PM Changeset in webkit [292885] by Chris Dumez
  • 2 edits in trunk/Source/WebCore

Require an existing AtomString for HTMLDocument's named getter parameter
https://bugs.webkit.org/show_bug.cgi?id=239334

Reviewed by Alexey Shvayka.

Require an existing AtomString for HTMLDocument's named getter parameter. There is no point
in allocating a new AtomString as the AtomString should already exist if there is any element
with this name.

  • html/HTMLDocument.idl:
12:45 PM Changeset in webkit [292884] by Jonathan Bedard
  • 1 edit
    2 adds in trunk

Add .github/pull_request_template.md
https://bugs.webkit.org/show_bug.cgi?id=239347
<rdar://problem/91763594>

Reviewed by Michael Catanzaro.

  • .github/pull_request_template.md: Added.

Canonical link: https://commits.webkit.org/249654@main

12:30 PM Changeset in webkit [292883] by Alexey Shvayka
  • 4 edits in trunk

InternalFunction::createSubclassStructure() should use base object's global object
https://bugs.webkit.org/show_bug.cgi?id=239346

Reviewed by Darin Adler.

JSTests:

  • stress/internal-function-subclass-structure-realm.js:

Source/JavaScriptCore:

Chrome and Firefox don't agree on interoperable behavior in case of cross-realm
NewTarget's "prototype", so this patch aligns WebKit with Chrome to fix a web-compat issue.

  • runtime/InternalFunction.cpp:

(JSC::InternalFunction::createSubclassStructure):

12:13 PM Changeset in webkit [292882] by J Pascoe
  • 41 edits
    9 deletes in trunk

[WebAuthn] Clean up WebAuthenticationModern and WebAuthnProcess
https://bugs.webkit.org/show_bug.cgi?id=239073
rdar://problem/91571030

Source/WebCore:

The WebAuthenticationModern flag and WebAuthnProcess are no longer used
and can be removed. This patch removes all references to both the flag
and the process.

Reviewed by Brent Fulgham.

  • page/RuntimeEnabledFeatures.h:

(WebCore::RuntimeEnabledFeatures::setWebAuthenticationModernEnabled): Deleted.
(WebCore::RuntimeEnabledFeatures::webAuthenticationModernEnabled const): Deleted.

  • platform/RuntimeApplicationChecks.cpp:

(WebCore::processTypeDescription):

  • platform/RuntimeApplicationChecks.h:

Source/WebKit:

The WebAuthenticationModern flag and WebAuthnProcess are no longer used
and can be removed. This patch removes all references to both the flag
and the process.

Reviewed by Brent Fulgham.

Covered by existing tests and manual testing on macOS / iOS.

  • Configurations/WebAuthnService.xcconfig: Removed.
  • Configurations/WebKit.xcconfig:
  • DerivedSources.make:
  • Resources/SandboxProfiles/ios/com.apple.WebKit.WebAuthn.sb.in: Removed.
  • Scripts/process-entitlements.sh:
  • Shared/Cocoa/DefaultWebBrowserChecks.mm:

(WebKit::isInWebKitChildProcess):

  • Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceEntryPoint.h:
  • Shared/EntryPointUtilities/Cocoa/XPCService/XPCServiceMain.mm:

(WebKit::XPCServiceEventHandler):

  • Shared/mac/AuxiliaryProcessMac.mm:

(WebKit::processStorageClass):
(WebKit::sandboxDirectory):

  • Sources.txt:
  • SourcesCocoa.txt:
  • UIProcess/API/C/WKPreferences.cpp:

(WKPreferencesSetWebAuthenticationModernEnabled): Deleted.
(WKPreferencesGetWebAuthenticationModernEnabled): Deleted.

  • UIProcess/API/C/WKPreferencesRefPrivate.h:
  • UIProcess/API/Cocoa/WKProcessPool.mm:

(+[WKProcessPool _webAuthnProcessIdentifier]): Deleted.

  • UIProcess/API/Cocoa/WKProcessPoolPrivate.h:
  • UIProcess/API/Cocoa/_WKWebAuthenticationPanel.mm:

(+[_WKWebAuthenticationPanel importLocalAuthenticatorWithAccessGroup:credential:error:]):

  • UIProcess/AuxiliaryProcessProxy.cpp:

(WebKit::AuxiliaryProcessProxy::getLaunchOptions):

  • UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::WebProcessPool::notifyPreferencesChanged):

  • UIProcess/Launcher/ProcessLauncher.h:
  • UIProcess/Launcher/cocoa/ProcessLauncherCocoa.mm:

(WebKit::serviceName):
(WebKit::shouldLeakBoost):

  • UIProcess/WebAuthentication/Authenticator.h:

(WebKit::Authenticator::requestData const):
(WebKit::Authenticator::setWebAuthenticationModernEnabled): Deleted.
(WebKit::Authenticator::webAuthenticationModernEnabled const): Deleted.
(): Deleted.

  • UIProcess/WebAuthentication/AuthenticatorManager.cpp:

(WebKit::AuthenticatorManager::authenticatorAdded):
(WebKit::AuthenticatorManager::enableModernWebAuthentication): Deleted.

  • UIProcess/WebAuthentication/AuthenticatorManager.h:
  • UIProcess/WebAuthentication/Cocoa/LocalAuthenticator.mm:

(WebKit::LocalAuthenticator::makeCredential):
(WebKit::LocalAuthenticator::getAssertion):
(WebKit::LocalAuthenticator::continueGetAssertionAfterResponseSelected):

  • UIProcess/WebAuthentication/WebAuthnProcessProxy.cpp: Removed.
  • UIProcess/WebAuthentication/WebAuthnProcessProxy.h: Removed.
  • UIProcess/WebAuthentication/fido/CtapAuthenticator.cpp:

(WebKit::CtapAuthenticator::continueGetNextAssertionAfterResponseReceived):
(WebKit::CtapAuthenticator::continueRequestPinAfterGetKeyAgreement):

  • UIProcess/WebProcessPool.cpp:

(WebKit::WebProcessPool::getWebAuthnProcessConnection): Deleted.

  • UIProcess/WebProcessPool.h:
  • UIProcess/WebProcessProxy.cpp:

(WebKit::WebProcessProxy::getWebAuthnProcessConnection): Deleted.

  • UIProcess/WebProcessProxy.h:
  • UIProcess/WebProcessProxy.messages.in:
  • WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnService/Info-OSX.plist: Removed.
  • WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnService/Info-iOS.plist: Removed.
  • WebAuthnProcess/EntryPoint/Cocoa/XPCService/WebAuthnServiceEntryPoint.mm: Removed.
  • WebAuthnProcess/WebAuthnConnectionToWebProcess.cpp: Removed.
  • WebAuthnProcess/WebAuthnConnectionToWebProcess.h: Removed.
  • WebAuthnProcess/WebAuthnConnectionToWebProcess.messages.in: Removed.
  • WebAuthnProcess/WebAuthnProcess.cpp: Removed.
  • WebAuthnProcess/WebAuthnProcess.h: Removed.
  • WebAuthnProcess/WebAuthnProcess.messages.in: Removed.
  • WebAuthnProcess/WebAuthnProcessCreationParameters.cpp: Removed.
  • WebAuthnProcess/WebAuthnProcessCreationParameters.h: Removed.
  • WebAuthnProcess/ios/WebAuthnProcessIOS.mm: Removed.
  • WebAuthnProcess/mac/WebAuthnProcessMac.mm: Removed.
  • WebAuthnProcess/mac/com.apple.WebKit.WebAuthnProcess.sb.in: Removed.
  • WebKit.xcodeproj/project.pbxproj:
  • WebProcess/WebAuthentication/WebAuthenticatorCoordinator.cpp:

(WebKit::WebAuthenticatorCoordinator::makeCredential):
(WebKit::WebAuthenticatorCoordinator::getAssertion):
(WebKit::WebAuthenticatorCoordinator::isUserVerifyingPlatformAuthenticatorAvailable):

  • WebProcess/WebAuthentication/WebAuthnProcessConnection.cpp: Removed.
  • WebProcess/WebAuthentication/WebAuthnProcessConnection.h: Removed.
  • WebProcess/WebAuthentication/WebAuthnProcessConnection.messages.in: Removed.
  • WebProcess/WebAuthentication/WebAuthnProcessConnectionInfo.h: Removed.
  • WebProcess/WebCoreSupport/WebChromeClient.cpp:

(WebKit::WebChromeClient::setMockWebAuthenticationConfiguration):

  • WebProcess/WebProcess.cpp:

(WebKit::getWebAuthnProcessConnection): Deleted.
(WebKit::WebProcess::ensureWebAuthnProcessConnection): Deleted.
(WebKit::WebProcess::webAuthnProcessConnectionClosed): Deleted.

  • WebProcess/WebProcess.h:

(WebKit::WebProcess::existingWebAuthnProcessConnection): Deleted.

Source/WTF:

Reviewed by Brent Fulgham.

  • Scripts/Preferences/WebPreferencesExperimental.yaml:

Tools:

Reviewed by Brent Fulgham.

  • TestWebKitAPI/Tests/WebKitCocoa/_WKWebAuthenticationPanel.mm:

(TestWebKitAPI::TEST):
(TestWebKitAPI::WebCore::webAuthenticationModernExperimentalFeature): Deleted.

12:04 PM Changeset in webkit [292881] by Jonathan Bedard
  • 2 edits in trunk/Tools

[build.webkit.org] Use identifier as version when uploading artifacts
https://bugs.webkit.org/show_bug.cgi?id=239321
<rdar://problem/91734798>

Reviewed by Ryan Haddad.

  • Tools/CISupport/build-webkit-org/steps.py:

(GenerateJSCBundle): Use archive_revision to name generated content.
(GenerateMiniBrowserBundle): Ditto
(UploadBuiltProduct): Ditto
(UploadMinifiedBuiltProduct): Ditto
(DownloadBuiltProduct): Ditto
(DownloadBuiltProductFromMaster): Ditto
(RunBenchmarkTests): Ditto
(UploadTestResults): Ditto
(TransferToS3): Ditto
(ExtractTestResults.init): Ditto
(ShowIdentifier.evaluateCommand): Set archive_revision as identifier,
fall back to got_revision.

Canonical link: https://commits.webkit.org/249651@main

11:00 AM Changeset in webkit [292880] by Aditya Keerthi
  • 4 edits in trunk/Source/WebKit

[iOS] Add support for find-and-replace keyboard shortcut
https://bugs.webkit.org/show_bug.cgi?id=239320
rdar://91537724

Reviewed by Wenson Hsieh.

  • UIProcess/API/ios/WKWebViewIOS.h:
  • UIProcess/ios/WKContentViewInteraction.h:
  • UIProcess/ios/WKContentViewInteraction.mm:

(-[WKContentView canPerformActionForWebView:withSender:]):
(-[WKContentView findAndReplaceForWebView:]):

10:55 AM Changeset in webkit [292879] by Chris Dumez
  • 44 edits in trunk

Drop inefficient String::append() overloads
https://bugs.webkit.org/show_bug.cgi?id=239289

Reviewed by Sam Weinig.

Source/JavaScriptCore:

  • heap/HeapSnapshotBuilder.cpp:

(JSC::HeapSnapshotBuilder::json):

  • runtime/IntlObject.cpp:

(JSC::resolveLocale):

  • runtime/TemporalObject.cpp:

(JSC::ellipsizeAt):

  • tools/FunctionOverrides.cpp:

(JSC::initializeOverrideInfo):
(JSC::parseClause):

Source/WebCore:

  • Modules/indexeddb/IDBKeyData.cpp:

(WebCore::IDBKeyData::loggingString const):

  • Modules/indexeddb/IDBKeyRangeData.cpp:

(WebCore::IDBKeyRangeData::loggingString const):

  • Modules/indexeddb/shared/IDBIndexInfo.cpp:

(WebCore::IDBIndexInfo::loggingString const):

  • Modules/websockets/WebSocketHandshake.cpp:

(WebCore::trimInputSample):

  • accessibility/isolatedtree/AXIsolatedObject.cpp:

(WebCore::AXIsolatedObject::initializeAttributeData):

  • dom/CharacterData.cpp:

(WebCore::CharacterData::parserAppendData):

  • dom/Text.cpp:

(WebCore::appendTextRepresentation):

  • dom/ViewportArguments.cpp:

(WebCore::viewportErrorMessage):

  • editing/markup.cpp:

(WebCore::fillContainerFromString):

  • html/FTPDirectoryDocument.cpp:

(WebCore::FTPDirectoryDocumentParser::parseAndAppendOneLine):
(WebCore::FTPDirectoryDocumentParser::append):
(WebCore::FTPDirectoryDocumentParser::finish):

  • html/canvas/WebGLRenderingContextBase.cpp:

(WebCore::WebGLRenderingContextBase::getActiveUniform):

  • html/track/WebVTTParser.cpp:

(WebCore::WebVTTParser::checkAndStoreStyleSheet):

  • html/track/WebVTTParser.h:
  • inspector/InspectorOverlay.cpp:

(WebCore::truncateWithEllipsis):

  • inspector/InspectorOverlayLabel.cpp:

(WebCore::InspectorOverlayLabel::draw):

  • inspector/agents/InspectorDOMAgent.cpp:

(WebCore::InspectorDOMAgent::buildObjectForNode):

  • page/scrolling/ScrollingStateTree.cpp:

(WebCore::ScrollingStateTree::scrollingStateTreeAsText const):

  • platform/graphics/HEVCUtilities.cpp:

(WebCore::createHEVCCodecParametersString):

  • platform/network/HTTPParsers.cpp:

(WebCore::trimInputSample):

  • platform/network/curl/CurlCacheEntry.cpp:

(WebCore::CurlCacheEntry::CurlCacheEntry):
(WebCore::CurlCacheEntry::saveResponseHeaders):

  • platform/network/curl/CurlCacheManager.cpp:

(WebCore::CurlCacheManager::setCacheDirectory):

  • platform/network/curl/CurlContext.cpp:

(WebCore::CurlHandle::addExtraNetworkLoadMetrics):

  • rendering/RenderLayerBacking.cpp:

(WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):

Source/WebKit:

  • Shared/mac/AuxiliaryProcessMac.mm:

(WebKit::populateSandboxInitializationParameters):

  • WebProcess/Plugins/PDF/PDFPlugin.mm:

(WebKit::PDFPlugin::setSuggestedFilename):

Source/WebKitLegacy/win:

  • WebDownload.cpp:

(WebDownload::bundlePathForTargetPath):

Source/WTF:

  • wtf/Assertions.cpp:
  • wtf/text/StringBuilder.h:

(WTF::StringBuilder::append):

  • wtf/text/WTFString.cpp:

(WTF::String::insert):
(WTF::String::append):

  • wtf/text/WTFString.h:

Tools:

  • TestWebKitAPI/Tests/WTF/FileSystem.cpp:

(TestWebKitAPI::TEST_F):

  • TestWebKitAPI/Tests/WTF/StringBuilder.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebCore/ContentExtensions.cpp:

(TestWebKitAPI::TEST_F):

  • WebKitTestRunner/TestController.cpp:

(WTR::TestController::didReceiveAuthenticationChallenge):

10:46 AM Changeset in webkit [292878] by gnavamarino@apple.com
  • 2 edits in trunk/Source/WebCore

ScriptDisallowedScope::isEventAllowedInMainThread assert failure when activating AudioSession
https://bugs.webkit.org/show_bug.cgi?id=239343

Reviewed by Eric Carlson.

As part of HTMLMediaElement::clearMediaPlayer we call PlatformMediaSession::canProduceAudioChanged
which can result in activating the AudioSession when the page is capturing audio.

This sends a synchronous IPC message to the GPU process. As part of IPC::Connection::waitForSyncReply,
we also end up dispatching enqueued messages, including a WebPage_EndPrinting message that
fires an event listener on the main thread.

This patch will instead queue the PlatformMediaSession::canProduceAudioChanged as a task to avoid
firing the event listener on the main thread, which results in assertion failure.

  • html/HTMLMediaElement.cpp:

(WebCore::HTMLMediaElement::clearMediaPlayer):

10:26 AM Changeset in webkit [292877] by Russell Epstein
  • 9 edits in branches/safari-614.1.10-branch/Source

Versioning.

WebKit-7614.1.10.1

10:23 AM Changeset in webkit [292876] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

Replace PaintCompositedResultsToMediaSample with PaintCompositedResultsToVideoFrame in generate-gpup-webgl
https://bugs.webkit.org/show_bug.cgi?id=239317

Patch by John Cunningham <johncunningham@apple.com> on 2022-04-14
Reviewed by Alexey Proskuryakov.

  • Scripts/generate-gpup-webgl:
10:15 AM Changeset in webkit [292875] by Karl Rackler
  • 2 edits in trunk/LayoutTests

[ Mac ] editing/execCommand/insert-ordered-list-and-delete.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=239345

Unreviewed test gardening.

  • platform/mac/TestExpectations:
10:07 AM Changeset in webkit [292874] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Update ContainerNode::getElementsByName() to take in an AtomString
https://bugs.webkit.org/show_bug.cgi?id=239333

Reviewed by Alexey Shvayka.

Update ContainerNode::getElementsByName() to take in an AtomString instead of a String.
Its implementation ends up atomizing the name anyway.

  • dom/ContainerNode.cpp:

(WebCore::ContainerNode::getElementsByName):

  • dom/ContainerNode.h:
9:39 AM Changeset in webkit [292873] by Robert Jenner
  • 2 edits in trunk/Tools

Remove bot241 to be re-purposed
<rdar://problem/91729033>

Unreviewed configuration change.

  • Tools/CISupport/build-webkit-org/config.json:
9:23 AM Changeset in webkit [292872] by youenn@apple.com
  • 2 edits in trunk/Source/WebCore

Add logging for persistent notification event handler failure
https://bugs.webkit.org/show_bug.cgi?id=239131

Reviewed by Chris Dumez.

  • workers/service/server/SWServer.cpp:

(WebCore::SWServer::processNotificationEvent):

9:05 AM Changeset in webkit [292871] by Karl Rackler
  • 2 edits in trunk/LayoutTests

[ Mac wk2 arm64 ] scrollingcoordinator/mac/fixed-backgrounds/fixed-background-in-overflow-in-iframe.html is a flaky failure
https://bugs.webkit.org/show_bug.cgi?id=225529

Unreviewed test gardening.

  • platform/mac-wk2/TestExpectations:
8:56 AM Changeset in webkit [292870] by Justin Michaud
  • 32 edits
    1 add in trunk

[PGO] We should be able to build WebKit to collect PGO profiles easily
https://bugs.webkit.org/show_bug.cgi?id=238776

Reviewed by Wenson Hsieh.

.:

  • Makefile.shared:
  • Source/cmake/WebKitFeatures.cmake:

Source/JavaScriptCore:

  • Configurations/JavaScriptCore.xcconfig:
  • runtime/VM.cpp:

(JSC::VM::VM):

Source/WebCore:

  • Configurations/WebCore.xcconfig:
  • Configurations/WebCoreTestSupport.xcconfig:
  • page/Frame.cpp:

(WebCore::Frame::Frame):

Source/WebKit:

  • Configurations/BaseTarget.xcconfig:
  • Configurations/WebKit.xcconfig:
  • GPUProcess/mac/GPUProcessMac.mm:

(WebKit::GPUProcess::initializeProcess):

  • NetworkProcess/mac/NetworkProcessMac.mm:

(WebKit::NetworkProcess::initializeProcess):

  • WebProcess/WebPage/WebPage.cpp:

(WebKit::m_appHighlightsVisible):

Source/WTF:

Build WebKit as follows: make release WK_LTO_MODE=thin ENABLE_LLVM_PROFILE_GENERATION=ON
Then, follow the directions in the log output at runtime to collect your raw PGO profiles!

We add a new compile flag plus WTF::registerProfileGenerationCallback, allowing llvm profiles
to be collected by sending a notifyutil signal. The files are written to the temp directory,
and it seems like the sandbox permits this by default. You may need to disable the sandbox if
you encounter issues, either by editing the *.sb files or by using an inserted dylib to interpose
the sandbox initialization calls.

  • WTF.xcodeproj/project.pbxproj:
  • wtf/CMakeLists.txt:
  • wtf/GenerateProfiles.h: Added.

(WTF::registerProfileGenerationCallback):

  • wtf/PlatformEnable.h:

Tools:

  • Scripts/check-for-weak-vtables-and-externals:
  • Scripts/webkitdirs.pm:

(XcodeOptions):

  • Scripts/webkitperl/FeatureList.pm:
8:48 AM Changeset in webkit [292869] by youenn@apple.com
  • 3 edits in trunk/Source/WebKit

REGRESSION (249029@main): http/wpt/cache-storage/cache-storage-networkprocess-crash.html is a flaky CRASH with ASSERTION FAILED: m_pageMap.isEmpty()
https://bugs.webkit.org/show_bug.cgi?id=239095
<rdar://problem/91595784>

Reviewed by Chris Dumez.

We send the same IPC message to close WebSWContextManagerConnection from either network process or UIProcess.
To prevent closing twice the same connection, we exit early if the connection is closed.

Covered by existing tests.

  • WebProcess/Storage/WebSWContextManagerConnection.cpp:
  • WebProcess/Storage/WebSharedWorkerContextManagerConnection.cpp:
8:44 AM Changeset in webkit [292868] by youenn@apple.com
  • 2 edits in trunk/Tools

Enable ExitsUnderMemoryPressureWebRTCCase and disable ExitsUnderMemoryPressureGetUserMediaAudioCase on iOS simulator
https://bugs.webkit.org/show_bug.cgi?id=239115

Reviewed by Eric Carlson.

  • TestWebKitAPI/Tests/WebKitCocoa/GPUProcess.mm:

(TEST):

7:52 AM Changeset in webkit [292867] by Kate Cheney
  • 16 edits in trunk

WKWebView: navigator.serviceWorker.register method fails for a new version of an already registered service worker.
https://bugs.webkit.org/show_bug.cgi?id=229554
<rdar://problem/82388593>

Reviewed by Brent Fulgham.

Source/WebCore:

Check to see if a domain has already been registered when validating
a service worker registration domain. In this case, we allow an
updated registration.

There are a couple of other changes that are key for testing this.
First, this adds a way to override the max registration count for
tests. This is because we can only use 127.0.0.1 and localhost in
tests, but would need 3 domains in order to test the max count.
overrideServiceWorkerRegistrationCountTestingValue lets us lower that
number.

Second, we also want a way to override the loopback IP address check
to make sure we don't get a false positive test result for localhost
and 127.0.0.1 in API tests.

  • workers/service/server/SWServer.cpp:

(WebCore::SWServer::addRegistrationFromStore):
(WebCore::SWServer::addRegistration):
(WebCore::SWServer::SWServer):
(WebCore::SWServer::maxRegistrationCount):
(WebCore::SWServer::allowLoopbackIPAddress):
(WebCore::SWServer::validateRegistrationDomain):
(WebCore::SWServer::scheduleJob):
(WebCore::SWServer::removeFromScopeToRegistrationMap):

  • workers/service/server/SWServer.h:

Source/WebKit:

Plumbing to override the max service worker registration count for
test purposes. See WebCore changelog for details.

  • NetworkProcess/NetworkSession.cpp:

(WebKit::NetworkSession::NetworkSession):
(WebKit::NetworkSession::ensureSWServer):

  • NetworkProcess/NetworkSession.h:

(WebKit::NetworkSession::overrideServiceWorkerRegistrationCountTestingValue const):

  • NetworkProcess/NetworkSessionCreationParameters.cpp:

(WebKit::NetworkSessionCreationParameters::encode const):
(WebKit::NetworkSessionCreationParameters::decode):

  • NetworkProcess/NetworkSessionCreationParameters.h:
  • UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.h:
  • UIProcess/API/Cocoa/_WKWebsiteDataStoreConfiguration.mm:

(-[_WKWebsiteDataStoreConfiguration overrideServiceWorkerRegistrationCountTestingValue]):
(-[_WKWebsiteDataStoreConfiguration setOverrideServiceWorkerRegistrationCountTestingValue:]):

  • UIProcess/WebsiteData/WebsiteDataStore.cpp:

(WebKit::WebsiteDataStore::parameters):

  • UIProcess/WebsiteData/WebsiteDataStoreConfiguration.cpp:

(WebKit::WebsiteDataStoreConfiguration::copy const):

  • UIProcess/WebsiteData/WebsiteDataStoreConfiguration.h:

(WebKit::WebsiteDataStoreConfiguration::overrideServiceWorkerRegistrationCountTestingValue const):
(WebKit::WebsiteDataStoreConfiguration::setOverrideServiceWorkerRegistrationCountTestingValue):

Tools:

Adds a new test for re-registering and an overdue test for
unregistering now that we have the infrastructure. This also does some
refactoring to reduce duplicate code.

  • TestWebKitAPI/Info.plist:

Update the Info.plist to consider localhost an app-bound domain so we
can test the max count when overriding the loopback IP. This requires
replacing an existing domain to stay under the count limit.

  • TestWebKitAPI/Tests/WebKitCocoa/InAppBrowserPrivacy.mm:

(TEST):

7:36 AM Changeset in webkit [292866] by Kate Cheney
  • 2 edits in trunk/LayoutTests

[ iOS ] imported/w3c/web-platform-tests/content-security-policy/worker-src/service-* tests are consistently failing (229875)
https://bugs.webkit.org/show_bug.cgi?id=229875
<rdar://problem/82727204>

Unreviewed. Updating test expectations to enable CSP worker-src tests.

  • platform/ios-wk2/TestExpectations:
7:35 AM Changeset in webkit [292865] by zan@falconsigh.net
  • 3 edits in trunk

[GTK][WPE] Make the ENABLE_GPU_PROCESS CMake option depend on USE_ANGLE_WEBGL
https://bugs.webkit.org/show_bug.cgi?id=239330

Reviewed by Adrian Perez de Castro.

For the GTK and WPE ports, the ENABLE_GPU_PROCESS CMake option should
depend on the USE_ANGLE_WEBGL option being enabled. There's no plans
to support 'direct' GL execution in that process, and the ANGLE usage
also implies (for these two ports) usage of generic buffer solutions
that are shareable across process boundaries, as is necessary for a
functioning GPUProcess implementation.

  • Source/cmake/OptionsGTK.cmake:
  • Source/cmake/OptionsWPE.cmake:
7:13 AM Changeset in webkit [292864] by zan@falconsigh.net
  • 2 edits in trunk/Source/WebCore

[GTK][WPE] Provide WK2 IPC encoding, decoding methods for the DMABufObject type
https://bugs.webkit.org/show_bug.cgi?id=239038

Reviewed by Adrian Perez de Castro.

Provide encoding and decoding methods on the DMABufObject class,
enabling transport over IPC channels.

There are two separate ref-qualified encoding methods. When encoding
an object that's managed through an lvalue reference, we duplicate the
file descriptor objects since the DMABufObject will live on. When
managed through an rvalue object, we know the object's lifetime is
intended to be limited to this encoding process, so we can avoid the
file descriptor duplication and move the fd values into the encoder.

  • platform/graphics/gbm/DMABufObject.h:

(WebCore::DMABufObject::encode const):
(WebCore::DMABufObject::encode):
(WebCore::DMABufObject::decode):

7:12 AM Changeset in webkit [292863] by zan@falconsigh.net
  • 24 edits in trunk/Source

[WK2] Enable more efficient encoding of synchronous-message reply arguments
https://bugs.webkit.org/show_bug.cgi?id=238740
<rdar://problem/91567779>

Reviewed by Kimmo Kinnunen.

Source/WebKit:

Handling of synchronous messages requires construction of a
CompletionHandler object that wraps a lambda function which handles
logging of the passed-in reply arguments as well as subsequent encoding
and dispatching of the reply into the IPC channel.

Right now, for any given message the CompletionHandler type is generated
from the IPC message specification, and it's essentially a function type
with a void return value and const lvalue references for every
non-builtin parameter type. This type is imposed onto the lambda handler
and when invoked, all the reply arguments are passed on to the IPC
encoding as lvalue references.

This inhibits opportunities where the reply argument could instead be
moved into the completion handler invocation, enabling a more efficient
encoding of the passed-in value. For instance, if a Unix file descriptor
was moved into the completion handler invocation, it could be trickled
down into an IPC::Attachment object and dispatched over IPC without any
problems. Instead, because the lvalue reference is imposed as the type,
it will have to be duplicated even if the object itself is expiring or
would be movable down the invocation.

To cover these cases, the actual completion handler type is now deduced
from the synchronous-message-handling method itself. This means that
the completion handler parameter for the given handler method can now
specify whether it wants to receive reply arguments by value or by
either lvalue or rvalue reference. The completion handler lambda can
combine these parameter types with std::forward() to pass down the
actual arguments in the most optimal fashion.

To avoid problems, each CompletionHandler specialization retrieved from
the method siganture is validated against the CompletionHandler type
generated from the IPC specification, requiring that the decayed
parameter types match between the two. It's still possible to directly
use the CompletionHandler type from the IPC specification as the
completion handler type in the message-handling method.

An rvalue reference variant of ArgumentCoder<T>::encode() is added.
Generic implementation again casts the passed-in reference into an
rvalue and calls the encode() on that object. If that type provides
ref-qualified encode() methods, implementations of those methods can
adjust and more aggressively move things into the encoder when the
method is called on an rvalue. It would also be possible to delete the
ref-qualified method covering lvalues, meaning encoding would be allowed
only for objects that are moved into the completion handler.

For types with custom specializations of ArgumentCoder<T>, those
specializations would again have to provide rvalue variants of the
encode() method and handle the passed-in values appropriately.

The send() methods that were previously generated for every IPC message
are removed in favor of encoding and calling Connection::sendSyncReply()
in the completion-handler lambda. Missing std::forward() calls are added
in parameter pack expansions as required.

  • GPUProcess/media/RemoteCDMProxy.cpp:

(WebKit::RemoteCDMProxy::getSupportedConfiguration):

  • GPUProcess/media/RemoteCDMProxy.h:
  • GPUProcess/media/RemoteImageDecoderAVFProxy.cpp:

(WebKit::RemoteImageDecoderAVFProxy::createFrameImageAtIndex):

  • GPUProcess/media/RemoteImageDecoderAVFProxy.h:
  • Platform/IPC/ArgumentCoder.h:

(IPC::ArgumentCoder::encode):

  • Platform/IPC/HandleMessage.h:

(IPC::C::):
(IPC::CompletionHandlerValidation::matchingParameters):
(IPC::CompletionHandlerValidation::matchingTypes):
(IPC::handleMessageSynchronous):
(IPC::handleMessageSynchronousWantsConnection):
(IPC::handleMessageAsync):
(IPC::handleMessageAsyncWantsConnection):

  • Platform/IPC/StreamServerConnection.h:

(IPC::StreamServerConnection::sendSyncReply):

  • Scripts/webkit/messages.py:

(message_to_struct_declaration):
(generate_message_handler):

  • Scripts/webkit/tests/TestWithCVPixelBufferMessageReceiver.cpp:

(Messages::TestWithCVPixelBuffer::ReceiveCVPixelBuffer::send): Deleted.

  • Scripts/webkit/tests/TestWithCVPixelBufferMessages.h:
  • Scripts/webkit/tests/TestWithImageDataMessageReceiver.cpp:

(Messages::TestWithImageData::ReceiveImageData::send): Deleted.

  • Scripts/webkit/tests/TestWithImageDataMessages.h:
  • Scripts/webkit/tests/TestWithLegacyReceiverMessageReceiver.cpp:

(Messages::TestWithLegacyReceiver::CreatePlugin::send): Deleted.
(Messages::TestWithLegacyReceiver::RunJavaScriptAlert::send): Deleted.
(Messages::TestWithLegacyReceiver::GetPlugins::send): Deleted.
(Messages::TestWithLegacyReceiver::GetPluginProcessConnection::send): Deleted.
(Messages::TestWithLegacyReceiver::TestMultipleAttributes::send): Deleted.
(Messages::TestWithLegacyReceiver::InterpretKeyEvent::send): Deleted.

  • Scripts/webkit/tests/TestWithLegacyReceiverMessages.h:
  • Scripts/webkit/tests/TestWithSemaphoreMessageReceiver.cpp:

(Messages::TestWithSemaphore::ReceiveSemaphore::send): Deleted.

  • Scripts/webkit/tests/TestWithSemaphoreMessages.h:
  • Scripts/webkit/tests/TestWithSuperclassMessageReceiver.cpp:

(Messages::TestWithSuperclass::TestAsyncMessage::send): Deleted.
(Messages::TestWithSuperclass::TestAsyncMessageWithNoArguments::send): Deleted.
(Messages::TestWithSuperclass::TestAsyncMessageWithMultipleArguments::send): Deleted.
(Messages::TestWithSuperclass::TestAsyncMessageWithConnection::send): Deleted.
(Messages::TestWithSuperclass::TestSyncMessage::send): Deleted.
(Messages::TestWithSuperclass::TestSynchronousMessage::send): Deleted.

  • Scripts/webkit/tests/TestWithSuperclassMessages.h:
  • Scripts/webkit/tests/TestWithoutAttributesMessageReceiver.cpp:

(Messages::TestWithoutAttributes::CreatePlugin::send): Deleted.
(Messages::TestWithoutAttributes::RunJavaScriptAlert::send): Deleted.
(Messages::TestWithoutAttributes::GetPlugins::send): Deleted.
(Messages::TestWithoutAttributes::GetPluginProcessConnection::send): Deleted.
(Messages::TestWithoutAttributes::TestMultipleAttributes::send): Deleted.
(Messages::TestWithoutAttributes::InterpretKeyEvent::send): Deleted.

  • Scripts/webkit/tests/TestWithoutAttributesMessages.h:
  • UIProcess/ProvisionalPageProxy.cpp:

Add a missing include that brings in the definition of the
WebBackForwardListCounts type along with its encode() method.

Source/WTF:

Add two helper types, OutType and InTypes, on both CompletionHandler
classes. OutType is an alias against the return type of the invokable
handler, InTypes is a tuple with types corresponding to the parameter
types of the invokable handler.

These are especially helpful in various templates dealing with the
CompletionHandler types.

  • wtf/CompletionHandler.h:

(WTF::CompletionHandler):
(WTF::CompletionHandlerWithFinalizer):

6:23 AM Changeset in webkit [292862] by commit-queue@webkit.org
  • 3 edits in trunk/Source/WebKit

Some IPC related message forwarding functions use const lvalue references
https://bugs.webkit.org/show_bug.cgi?id=238937

Patch by Kimmo Kinnunen <kkinnunen@apple.com> on 2022-04-14
Reviewed by Antti Koivisto.

Passing the message as const lvalue reference prevents IPC messages to be
changed to support move semantics for some message arguments.

Fix by using universal references in the shell function signatures.
Forward the messages from one shell function to other as rvalue references
via WTFMove, since the messages are always such that they are forwarded so.
This also catches most such errors in the future.

No new tests, refactor.

  • Platform/IPC/MessageSender.h:

(IPC::MessageSender::send):
(IPC::MessageSender::sendSync):
(IPC::MessageSender::sendWithAsyncReply):

  • WebProcess/WebPage/DrawingArea.h:

(WebKit::DrawingArea::send):

1:48 AM Changeset in webkit [292861] by youenn@apple.com
  • 46 edits
    4 adds in trunk

Expose workers as service worker clients and implement registration matching for dedicated workers
https://bugs.webkit.org/show_bug.cgi?id=239066

Reviewed by Chris Dumez.

LayoutTests/imported/w3c:

  • web-platform-tests/service-workers/service-worker/local-url-inherit-controller.https-expected.txt:
  • web-platform-tests/service-workers/service-worker/worker-client-id.https-expected.txt:
  • web-platform-tests/service-workers/service-worker/worker-interception-redirect.https-expected.txt:
  • web-platform-tests/service-workers/service-worker/worker-interception.https-expected.txt:

Source/WebCore:

Add support for exposing workers (dedicated and shared) as service worker clients.
Add support for setting the controlling registration for dedicated workers
(a follow-up patch should handle shared workers).
To properly handle loads coming from a worker, we properly set clientIdentifier and registration identifier
from the worker context, instead of from the worker's document.

Small refactoring to pass additional data to worker through WorkerInitializationData.
This is used to set the context ID and context controlling service worker.

Adding a specific check in CachedResourceLoader to not reuse the cache in case the service worker modes are different.
A potential issue is that the service workers are the same (0) as one request is the main request
and the second request is the request triggered by service worker to answer the first request.

Properly support blob URL matching directly in WorkerScriptLoader for workers.

Test: http/wpt/service-workers/controlled-dedicatedworker.https.html

  • WebCore.xcodeproj/project.pbxproj:
  • dom/Document.h:
  • dom/ScriptExecutionContext.h:
  • loader/DocumentLoader.cpp:
  • loader/FetchOptions.h:
  • loader/ThreadableLoader.cpp:
  • loader/WorkerThreadableLoader.cpp:
  • loader/cache/CachedResourceLoader.cpp:
  • workers/DedicatedWorkerThread.cpp:
  • workers/Worker.cpp:
  • workers/Worker.h:
  • workers/WorkerGlobalScope.cpp:
  • workers/WorkerGlobalScope.h:
  • workers/WorkerGlobalScopeProxy.h:
  • workers/WorkerInitializationData.h: Added.
  • workers/WorkerMessagingProxy.cpp:
  • workers/WorkerMessagingProxy.h:
  • workers/WorkerOrWorkletGlobalScope.cpp:
  • workers/WorkerOrWorkletGlobalScope.h:
  • workers/WorkerScriptLoader.cpp:
  • workers/WorkerScriptLoader.h:
  • workers/WorkerThread.cpp:
  • workers/WorkerThread.h:
  • workers/service/SWClientConnection.cpp:
  • workers/service/ServiceWorker.h:
  • workers/service/ServiceWorkerClientData.cpp:
  • workers/service/ServiceWorkerClientType.h:
  • workers/service/ServiceWorkerContainer.cpp:
  • workers/service/context/ServiceWorkerThread.cpp:
  • workers/shared/SharedWorkerScriptLoader.h:
  • workers/shared/context/SharedWorkerThreadProxy.cpp:

Source/WebKit:

Reuse the same strategy for DedicatedWorkers as for Documents to match registrations and control then:

  • Do matching in network process
  • If matching, send a message to WebProcess to set the matching registration data.

Add specific handling for worker registration rematching in case of redirections:

  • If redirection comes from service worker (via respondWith), do rematching.
  • If redirection comes from network, do not do rematching.
  • NetworkProcess/NetworkResourceLoader.cpp:
  • NetworkProcess/ServiceWorker/ServiceWorkerFetchTask.cpp:
  • NetworkProcess/ServiceWorker/WebSWServerConnection.cpp:
  • WebProcess/Network/WebLoaderStrategy.cpp:
  • WebProcess/Storage/WebSWClientConnection.cpp:
  • WebProcess/Storage/WebSWClientConnection.h:
  • WebProcess/Storage/WebSWClientConnection.messages.in:

LayoutTests:

  • TestExpectations:
  • http/wpt/service-workers/controlled-dedicatedworker.https-expected.txt: Added.
  • http/wpt/service-workers/controlled-dedicatedworker.https.html: Added.
  • http/wpt/service-workers/resources/controlled-worker.js: Added.
12:16 AM Changeset in webkit [292860] by youenn@apple.com
  • 22 edits
    4 adds in trunk

A shared worker in a cached page should not allow the remote shared worker to continue executing
https://bugs.webkit.org/show_bug.cgi?id=239286

Reviewed by Chris Dumez.

Source/WebCore:

SharedWorker need to react to resume/suspend in case of page cache so that the corresponding
remote shared worker might get suspended if all its shared worker objects are suspended.

Test: http/tests/navigation/page-cache-shared-worker.html

  • workers/shared/SharedWorker.cpp:
  • workers/shared/SharedWorker.h:
  • workers/shared/SharedWorkerObjectConnection.h:
  • workers/shared/context/SharedWorkerContextManager.cpp:
  • workers/shared/context/SharedWorkerContextManager.h:

Source/WebKit:

Store whether shared worker objects are suspended or resumed.
If all objects are suspended, suspend the remote shared worker.
Otherwise, keep the remote shared worker live.
Add plumbing code to make this happen.

  • NetworkProcess/ServiceWorker/WebSWServerConnection.cpp:
  • NetworkProcess/SharedWorker/WebSharedWorker.cpp:
  • NetworkProcess/SharedWorker/WebSharedWorker.h:
  • NetworkProcess/SharedWorker/WebSharedWorkerServer.cpp:
  • NetworkProcess/SharedWorker/WebSharedWorkerServer.h:
  • NetworkProcess/SharedWorker/WebSharedWorkerServerConnection.cpp:
  • NetworkProcess/SharedWorker/WebSharedWorkerServerConnection.h:
  • NetworkProcess/SharedWorker/WebSharedWorkerServerConnection.messages.in:
  • NetworkProcess/SharedWorker/WebSharedWorkerServerToContextConnection.cpp:
  • NetworkProcess/SharedWorker/WebSharedWorkerServerToContextConnection.h:
  • WebProcess/Storage/WebSharedWorkerContextManagerConnection.messages.in:
  • WebProcess/Storage/WebSharedWorkerObjectConnection.cpp:
  • WebProcess/Storage/WebSharedWorkerObjectConnection.h:

LayoutTests:

  • http/tests/navigation/page-cache-shared-worker-expected.txt: Added.
  • http/tests/navigation/page-cache-shared-worker.html: Added.
  • http/tests/navigation/resources/page-cache-helper-for-sharedworker.html: Added.
  • http/tests/navigation/resources/shared-worker-script.js: Added.
  • platform/mac-wk1/TestExpectations:
  • platform/win/TestExpectations:
Note: See TracTimeline for information about the timeline view.