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

Timeline



May 22, 2021:

11:23 PM Changeset in webkit [277929] by mark.lam@apple.com
  • 6 edits in trunk/Source/JavaScriptCore

Use singleton thunks for virtual calls.
https://bugs.webkit.org/show_bug.cgi?id=226149
rdar://problem/78357604

Reviewed by Yusuke Suzuki.

Change virtualThunkFor() to return 1 of 6 possible singleton thunks.
These thunks are cached via vm.jitStubs->ctiStubs().

This change saves us ~16M of executable JIT memory (for the unique thunks) on a
single run of Speedometer2. On an M1 Mac, switching to singleton thunks here also
appears to be a 1.012x speed up on Speedometer2. Performance is neutral on
JetStream2.

  • jit/JITThunks.cpp:

(JSC::JITThunks::ctiInternalFunctionCall):
(JSC::JITThunks::ctiInternalFunctionConstruct):

  • jit/JITThunks.h:
  • jit/ThunkGenerators.cpp:

(JSC::virtualThunkFor):
(JSC::virtualThunkForRegularCall):
(JSC::virtualThunkForRegularConstruct):
(JSC::virtualThunkForTailCall):
(JSC::virtualThunkForTailConstruct):
(JSC::virtualThunkForConstructCall):
(JSC::virtualThunkForConstructConstruct):

  • runtime/VM.cpp:

(JSC::VM::getCTIInternalFunctionTrampolineFor):

  • runtime/VM.h:
11:07 PM Changeset in webkit [277928] by mark.lam@apple.com
  • 18 edits in trunk/Source/JavaScriptCore

Enhance Link Buffer stats to have more fine grain profiles, and to collect count information.
https://bugs.webkit.org/show_bug.cgi?id=226151
rdar://problem/78359436

Reviewed by Yusuke Suzuki.

And also add a total of the sizes.
Also added $vm.clearLinkBufferStats() which resets all the stats to 0.

Here's an example of that the new stats look like:

Cummulative LinkBuffer profile sizes:

BaselineJIT: 61092032 (58.261902 MB) count 11621 avg size 5257

DFG: 35387904 (33.748535 MB) count 11143 avg size 3175

InlineCache: 19639155 (18.729358 MB) count 283890 avg size 69

VirtualThunk: 14256800 (13.596344 MB) count 43900 avg size 324

DFGOSRExit: 7636736 (7.282959 MB) count 5235 avg size 1458

FTL: 4927616 (4.699341 MB) count 5269 avg size 935

Wasm: 2134688 (2.035797 MB) count 847 avg size 2520

YarrJIT: 1320928 (1.259735 MB) count 2075 avg size 636

FTLOSRExit: 1084096 (1.033875 MB) count 417 avg size 2599

WasmThunk: 41408 (40.437500 KB) count 252 avg size 164

FTLThunk: 25088 (24.500000 KB) count 426 avg size 58

ExtraCTIThunk: 5984 (5.843750 KB) count 95 avg size 62

SpecializedThunk: 3456 (3.375000 KB) count 19 avg size 181

Thunk: 1760 (1.718750 KB) count 10 avg size 176

BoundFunctionThunk: 864 count 3 avg size 288

LLIntThunk: 608 count 18 avg size 33

DFGThunk: 608 count 1 avg size 608

DFGOSREntry: 160 count 1 avg size 160

JumpIsland: 0

CSSJIT: 0

Uncategorized: 0

Total: 147559891 (140.724078 MB)

  • assembler/LinkBuffer.cpp:

(JSC::LinkBuffer::performFinalization):
(JSC::LinkBuffer::clearProfileStatistics):
(JSC::LinkBuffer::dumpProfileStatistics):

  • assembler/LinkBuffer.h:
  • dfg/DFGOSRExit.cpp:

(JSC::DFG::JSC_DEFINE_JIT_OPERATION):

  • dfg/DFGThunks.cpp:

(JSC::DFG::osrExitGenerationThunkGenerator):
(JSC::DFG::osrEntryThunkGenerator):

  • ftl/FTLOSRExitCompiler.cpp:

(JSC::FTL::compileStub):

  • ftl/FTLThunks.cpp:

(JSC::FTL::genericGenerationThunkGenerator):
(JSC::FTL::slowPathCallThunkGenerator):

  • jit/ExecutableAllocator.cpp:
  • jit/JITOpcodes.cpp:

(JSC::JIT::op_ret_handlerGenerator):
(JSC::JIT::op_throw_handlerGenerator):
(JSC::JIT::op_enter_handlerGenerator):
(JSC::JIT::op_check_traps_handlerGenerator):

  • jit/JITPropertyAccess.cpp:

(JSC::JIT::slow_op_get_by_val_prepareCallGenerator):
(JSC::JIT::slow_op_get_private_name_prepareCallGenerator):
(JSC::JIT::slow_op_put_by_val_prepareCallGenerator):
(JSC::JIT::slow_op_put_private_name_prepareCallGenerator):
(JSC::JIT::slow_op_del_by_id_prepareCallGenerator):
(JSC::JIT::slow_op_del_by_val_prepareCallGenerator):
(JSC::JIT::slow_op_get_by_id_prepareCallGenerator):
(JSC::JIT::slow_op_get_by_id_with_this_prepareCallGenerator):
(JSC::JIT::slow_op_put_by_id_prepareCallGenerator):
(JSC::JIT::slow_op_get_from_scopeGenerator):
(JSC::JIT::slow_op_put_to_scopeGenerator):

  • jit/SlowPathCall.cpp:

(JSC::JITSlowPathCall::generateThunk):

  • jit/SpecializedThunkJIT.h:

(JSC::SpecializedThunkJIT::finalize):

  • jit/ThunkGenerators.cpp:

(JSC::handleExceptionGenerator):
(JSC::handleExceptionWithCallFrameRollbackGenerator):
(JSC::popThunkStackPreservesAndHandleExceptionGenerator):
(JSC::checkExceptionGenerator):
(JSC::virtualThunkFor):
(JSC::boundFunctionCallGenerator):

  • llint/LLIntThunks.cpp:

(JSC::LLInt::generateThunkWithJumpTo):
(JSC::LLInt::generateThunkWithJumpToPrologue):
(JSC::LLInt::generateThunkWithJumpToLLIntReturnPoint):
(JSC::LLInt::getHostCallReturnValueThunk):
(JSC::LLInt::createJSGateThunk):
(JSC::LLInt::createWasmGateThunk):
(JSC::LLInt::createTailCallGate):
(JSC::LLInt::loopOSREntryGateThunk):
(JSC::LLInt::entryOSREntryGateThunk):
(JSC::LLInt::wasmOSREntryGateThunk):
(JSC::LLInt::exceptionHandlerGateThunk):
(JSC::LLInt::returnFromLLIntGateThunk):
(JSC::LLInt::tagGateThunk):
(JSC::LLInt::untagGateThunk):
(JSC::LLInt::jitCagePtrThunk):

  • tools/JSDollarVM.cpp:

(JSC::JSDollarVM::finishCreation):

  • wasm/WasmBinding.cpp:

(JSC::Wasm::wasmToWasm):

  • wasm/WasmThunks.cpp:

(JSC::Wasm::throwExceptionFromWasmThunkGenerator):
(JSC::Wasm::throwStackOverflowFromWasmThunkGenerator):
(JSC::Wasm::triggerOMGEntryTierUpThunkGenerator):

  • wasm/js/WasmToJS.cpp:

(JSC::Wasm::wasmToJS):

9:28 PM Changeset in webkit [277927] by Lauro Moura
  • 2 edits in trunk/WebDriverTests

[WebDriver] Gardening more failures

Unreviewed test gardening.

8:50 PM Changeset in webkit [277926] by Ross Kirsling
  • 38 edits
    1 add in trunk

Support Ergonomic Brand Checks proposal (#x in obj)
https://bugs.webkit.org/show_bug.cgi?id=221093

Reviewed by Caio Araujo Neponoceno de Lima.

JSTests:

  • stress/private-in.js: Added.
  • test262/config.yaml: Add feature flag.

Source/JavaScriptCore:

This patch implements the following Stage 3 proposal (behind a runtime option):
https://github.com/tc39/proposal-private-fields-in-in

Specifically, it extends the in keyword to allow the LHS to be a private name,
thereby allowing users to implement Array.isArray-esque brand checks for their own classes
*without* having to wrap a private member get in a try-catch.

For example:
`
class C {

#x;
static isC(obj) { return #x in obj; }

}
`

This is done by adding two new bytecode ops, HasPrivateName and HasPrivateBrand. For the moment,
these are implemented without fast paths, as we should do so for InByVal first and then have these follow suit.

  • bytecode/BytecodeList.rb:
  • bytecode/BytecodeUseDef.cpp:

(JSC::computeUsesForBytecodeIndexImpl):
(JSC::computeDefsForBytecodeIndexImpl):

  • bytecompiler/BytecodeGenerator.cpp:

(JSC::BytecodeGenerator::emitHasPrivateName):
(JSC::BytecodeGenerator::emitHasPrivateBrand):
(JSC::BytecodeGenerator::emitCheckPrivateBrand):

  • bytecompiler/BytecodeGenerator.h:
  • bytecompiler/NodesCodegen.cpp:

(JSC::InNode::emitBytecode):

  • dfg/DFGAbstractInterpreterInlines.h:

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

  • dfg/DFGByteCodeParser.cpp:

(JSC::DFG::ByteCodeParser::parseBlock):

  • dfg/DFGCapabilities.cpp:

(JSC::DFG::capabilityLevel):

  • dfg/DFGClobberize.h:

(JSC::DFG::clobberize):

  • dfg/DFGDoesGC.cpp:

(JSC::DFG::doesGC):

  • dfg/DFGFixupPhase.cpp:

(JSC::DFG::FixupPhase::fixupNode):

  • dfg/DFGNodeType.h:
  • dfg/DFGPredictionPropagationPhase.cpp:
  • dfg/DFGSafeToExecute.h:

(JSC::DFG::safeToExecute):

  • dfg/DFGSpeculativeJIT.cpp:

(JSC::DFG::SpeculativeJIT::compileHasPrivateName):
(JSC::DFG::SpeculativeJIT::compileHasPrivateBrand):

  • dfg/DFGSpeculativeJIT.h:
  • dfg/DFGSpeculativeJIT32_64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • dfg/DFGSpeculativeJIT64.cpp:

(JSC::DFG::SpeculativeJIT::compile):

  • ftl/FTLCapabilities.cpp:

(JSC::FTL::canCompile):

  • ftl/FTLLowerDFGToB3.cpp:

(JSC::FTL::DFG::LowerDFGToB3::compileNode):
(JSC::FTL::DFG::LowerDFGToB3::compileHasPrivateName):
(JSC::FTL::DFG::LowerDFGToB3::compileHasPrivateBrand):

  • jit/JIT.cpp:

(JSC::JIT::privateCompileMainPass):

  • jit/JITOperations.cpp:

(JSC::JSC_DEFINE_JIT_OPERATION):

  • jit/JITOperations.h:
  • llint/LowLevelInterpreter.asm:
  • parser/ASTBuilder.h:

(JSC::ASTBuilder::createPrivateIdentifierNode):

  • parser/NodeConstructors.h:

(JSC::PrivateIdentifierNode::PrivateIdentifierNode):

  • parser/Nodes.h:

(JSC::ExpressionNode::isPrivateIdentifier const):

  • parser/Parser.cpp:

(JSC::Parser<LexerType>::parseBinaryExpression):

  • parser/SyntaxChecker.h:

(JSC::SyntaxChecker::createPrivateIdentifierNode):

  • parser/VariableEnvironment.h:
  • runtime/CommonSlowPaths.cpp:

(JSC::JSC_DEFINE_COMMON_SLOW_PATH):

  • runtime/CommonSlowPaths.h:
  • runtime/JSObject.h:
  • runtime/JSObjectInlines.h:

(JSC::JSObject::hasPrivateField):
(JSC::JSObject::hasPrivateBrand):
(JSC::JSObject::checkPrivateBrand):

  • runtime/OptionsList.h:
4:50 PM Changeset in webkit [277925] by Wenson Hsieh
  • 4 edits in trunk/Source/WebKit

[iOS] Implement page client hook for requesting image extraction results
https://bugs.webkit.org/show_bug.cgi?id=226144
rdar://78355604

Reviewed by Tim Horton.

Add a method stub for PageClientImpl::requestImageExtraction, which currently just invokes the completion
handler with empty results. See bug for more details.

  • UIProcess/ios/PageClientImplIOS.h:
  • UIProcess/ios/PageClientImplIOS.mm:

(WebKit::PageClientImpl::requestImageExtraction):

  • UIProcess/ios/WKContentViewInteraction.h:
4:20 PM Changeset in webkit [277924] by Russell Epstein
  • 1 copy in tags/Safari-612.1.15.0.5

Tag Safari-612.1.15.0.5.

4:10 PM Changeset in webkit [277923] by Russell Epstein
  • 8 edits in branches/safari-612.1.12-branch/Source

Versioning.

WebKit-7612.1.12.12

2:40 PM Changeset in webkit [277922] by Chris Dumez
  • 29 edits in trunk/Source

Adopt CheckedLock in more places
https://bugs.webkit.org/show_bug.cgi?id=226138

Reviewed by Darin Adler.

Adopt CheckedLock in more places to benefit from Clang Thread Safety Analysis.

Source/WebCore:

  • Modules/webdatabase/Database.cpp:

(WebCore::Database::performClose):
(WebCore::Database::scheduleTransaction):
(WebCore::Database::inProgressTransactionCompleted):
(WebCore::Database::hasPendingTransaction):
(WebCore::Database::runTransaction):

  • Modules/webdatabase/Database.h:

(WebCore::Database::WTF_GUARDED_BY_LOCK):

  • Modules/webdatabase/DatabaseManager.cpp:

(WebCore::DatabaseManager::addProposedDatabase):
(WebCore::DatabaseManager::removeProposedDatabase):
(WebCore::DatabaseManager::fullPathForDatabase):
(WebCore::DatabaseManager::detailsForNameAndOrigin):

  • Modules/webdatabase/DatabaseManager.h:
  • Modules/webdatabase/DatabaseThread.cpp:

(WebCore::DatabaseThread::databaseThread):
(WebCore::DatabaseThread::recordDatabaseOpen):
(WebCore::DatabaseThread::recordDatabaseClosed):
(WebCore::DatabaseThread::hasPendingDatabaseActivity const):

  • Modules/webdatabase/DatabaseThread.h:
  • Modules/webdatabase/SQLCallbackWrapper.h:

(WebCore::SQLCallbackWrapper::clear):
(WebCore::SQLCallbackWrapper::unwrap):

  • Modules/webdatabase/SQLTransaction.cpp:

(WebCore::SQLTransaction::enqueueStatement):
(WebCore::SQLTransaction::checkAndHandleClosedDatabase):
(WebCore::SQLTransaction::getNextStatement):

  • Modules/webdatabase/SQLTransaction.h:
  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::doCleanup):

  • accessibility/isolatedtree/AXIsolatedTree.h:

(WebCore::AXIsolatedTree::WTF_GUARDED_BY_LOCK):

  • platform/AbortableTaskQueue.h:
  • platform/audio/cocoa/AudioDestinationCocoa.cpp:

(WebCore::AudioDestinationCocoa::render):

  • platform/audio/cocoa/AudioDestinationCocoa.h:
  • platform/audio/gstreamer/AudioDestinationGStreamer.h:
  • platform/audio/gstreamer/AudioSourceProviderGStreamer.cpp:

(WebCore::AudioSourceProviderGStreamer::provideInput):
(WebCore::AudioSourceProviderGStreamer::handleSample):
(WebCore::AudioSourceProviderGStreamer::clearAdapters):

  • platform/audio/gstreamer/AudioSourceProviderGStreamer.h:
  • platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:

(webKitWebAudioSrcRenderIteration):

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::AVFWrapper::addToMap):
(WebCore::AVFWrapper::removeFromMap const):
(WebCore::AVFWrapper::avfWrapperForCallbackContext):
(WebCore::AVFWrapper::periodicTimeObserverCallback):
(WebCore::AVFWrapper::processNotification):
(WebCore::AVFWrapper::loadPlayableCompletionCallback):
(WebCore::AVFWrapper::loadMetadataCompletionCallback):
(WebCore::AVFWrapper::seekCompletedCallback):
(WebCore::AVFWrapper::processCue):
(WebCore::AVFWrapper::legibleOutputCallback):
(WebCore::AVFWrapper::processShouldWaitForLoadingOfResource):
(WebCore::AVFWrapper::resourceLoaderShouldWaitForLoadingOfRequestedResource):

Source/WebKit:

  • Platform/IPC/Connection.cpp:

(IPC::Connection::SyncMessageState::enqueueMatchingMessages):
(IPC::Connection::SyncMessageState::processIncomingMessage):
(IPC::Connection::SyncMessageState::dispatchMessages):
(IPC::Connection::SyncMessageState::dispatchMessagesAndResetDidScheduleDispatchMessagesForConnection):

Source/WTF:

  • wtf/Assertions.cpp:
  • wtf/TimingScope.cpp:
  • wtf/threads/BinarySemaphore.cpp:

(WTF::BinarySemaphore::waitUntil):

  • wtf/threads/BinarySemaphore.h:
1:10 PM Changeset in webkit [277921] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Use CheckedLock in SpeechRecognitionCaptureSourceImpl
https://bugs.webkit.org/show_bug.cgi?id=226131

Reviewed by Darin Adler.

Use CheckedLock in SpeechRecognitionCaptureSourceImpl to benefit from Clang Thread
Safety Analysis. Note that audioSamplesAvailable() does not grab the lock before using
m_dataSource, only when setting the data member. It is unclear why it is safe so I
used WTF_IGNORES_THREAD_SAFETY_ANALYSIS and added a FIXME comment.

  • Modules/speech/SpeechRecognitionCaptureSourceImpl.cpp:

(WebCore::SpeechRecognitionCaptureSourceImpl::updateDataSource):
(WebCore::SpeechRecognitionCaptureSourceImpl::pullSamplesAndCallDataCallback):

  • Modules/speech/SpeechRecognitionCaptureSourceImpl.h:
9:49 AM Changeset in webkit [277920] by Chris Dumez
  • 120 edits in trunk

Replace LockHolder with Locker in local variables
https://bugs.webkit.org/show_bug.cgi?id=226133

Reviewed by Darin Adler.

Replace LockHolder with Locker in local variables. It is shorter and it allows switching the lock
type more easily since the compiler with deduce the lock type T for Locker<T>.

Source/JavaScriptCore:

  • API/JSCallbackObject.h:

(JSC::JSCallbackObjectData::JSPrivatePropertyMap::setPrivateProperty):
(JSC::JSCallbackObjectData::JSPrivatePropertyMap::deletePrivateProperty):
(JSC::JSCallbackObjectData::JSPrivatePropertyMap::visitChildren):

  • API/JSValue.mm:

(handerForStructTag):

  • API/tests/testapi.cpp:

(testCAPIViaCpp):

  • assembler/testmasm.cpp:

(JSC::run):

  • b3/air/testair.cpp:
  • b3/testb3_1.cpp:

(run):

  • bytecode/DirectEvalCodeCache.cpp:

(JSC::DirectEvalCodeCache::setSlow):
(JSC::DirectEvalCodeCache::clear):
(JSC::DirectEvalCodeCache::visitAggregateImpl):

  • bytecode/SuperSampler.cpp:

(JSC::initializeSuperSampler):
(JSC::resetSuperSamplerState):
(JSC::printSuperSamplerState):
(JSC::enableSuperSampler):
(JSC::disableSuperSampler):

  • dfg/DFGCommonData.cpp:

(JSC::DFG::CommonData::invalidate):
(JSC::DFG::CommonData::~CommonData):
(JSC::DFG::CommonData::installVMTrapBreakpoints):
(JSC::DFG::codeBlockForVMTrapPC):

  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::cleanMustHandleValuesIfNecessary):

  • dfg/DFGWorklist.cpp:

(JSC::DFG::Worklist::~Worklist):
(JSC::DFG::Worklist::finishCreation):
(JSC::DFG::Worklist::isActiveForVM const):
(JSC::DFG::Worklist::enqueue):
(JSC::DFG::Worklist::compilationState):
(JSC::DFG::Worklist::waitUntilAllPlansForVMAreReady):
(JSC::DFG::Worklist::removeAllReadyPlansForVM):
(JSC::DFG::Worklist::completeAllReadyPlansForVM):
(JSC::DFG::Worklist::visitWeakReferences):
(JSC::DFG::Worklist::removeDeadPlans):
(JSC::DFG::Worklist::removeNonCompilingPlansForVM):
(JSC::DFG::Worklist::queueLength):
(JSC::DFG::Worklist::dump const):
(JSC::DFG::Worklist::setNumberOfThreads):

  • dfg/DFGWorklistInlines.h:

(JSC::DFG::Worklist::iterateCodeBlocksForGC):

  • disassembler/Disassembler.cpp:
  • heap/BlockDirectory.cpp:

(JSC::BlockDirectory::addBlock):

  • heap/CodeBlockSetInlines.h:

(JSC::CodeBlockSet::iterateCurrentlyExecuting):

  • heap/ConservativeRoots.cpp:

(JSC::ConservativeRoots::add):

  • heap/Heap.cpp:

(JSC::Heap::Heap):
(JSC::Heap::lastChanceToFinalize):
(JSC::Heap::collectAsync):
(JSC::Heap::runBeginPhase):
(JSC::Heap::waitForCollector):
(JSC::Heap::requestCollection):
(JSC::Heap::notifyIsSafeToCollect):

  • heap/SlotVisitor.cpp:

(JSC::SlotVisitor::didReachTermination):

  • inspector/agents/InspectorScriptProfilerAgent.cpp:

(Inspector::InspectorScriptProfilerAgent::startTracking):
(Inspector::InspectorScriptProfilerAgent::trackingComplete):
(Inspector::InspectorScriptProfilerAgent::stopSamplingWhenDisconnecting):

  • inspector/remote/RemoteConnectionToTarget.cpp:

(Inspector::RemoteConnectionToTarget::setup):
(Inspector::RemoteConnectionToTarget::sendMessageToTarget):
(Inspector::RemoteConnectionToTarget::close):
(Inspector::RemoteConnectionToTarget::targetClosed):

  • inspector/remote/RemoteInspector.cpp:

(Inspector::RemoteInspector::registerTarget):
(Inspector::RemoteInspector::unregisterTarget):
(Inspector::RemoteInspector::updateTarget):
(Inspector::RemoteInspector::updateClientCapabilities):
(Inspector::RemoteInspector::setClient):
(Inspector::RemoteInspector::setupFailed):
(Inspector::RemoteInspector::setupCompleted):
(Inspector::RemoteInspector::stop):

  • inspector/remote/cocoa/RemoteConnectionToTargetCocoa.mm:

(Inspector::RemoteTargetHandleRunSourceGlobal):
(Inspector::RemoteTargetQueueTaskOnGlobalQueue):
(Inspector::RemoteTargetHandleRunSourceWithInfo):
(Inspector::RemoteConnectionToTarget::setup):
(Inspector::RemoteConnectionToTarget::targetClosed):
(Inspector::RemoteConnectionToTarget::close):
(Inspector::RemoteConnectionToTarget::sendMessageToTarget):
(Inspector::RemoteConnectionToTarget::queueTaskOnPrivateRunLoop):

  • inspector/remote/cocoa/RemoteInspectorCocoa.mm:

(Inspector::RemoteInspector::updateAutomaticInspectionCandidate):
(Inspector::RemoteInspector::sendMessageToRemote):
(Inspector::RemoteInspector::start):
(Inspector::RemoteInspector::setupXPCConnectionIfNeeded):
(Inspector::RemoteInspector::setParentProcessInformation):
(Inspector::RemoteInspector::xpcConnectionReceivedMessage):
(Inspector::RemoteInspector::xpcConnectionFailed):
(Inspector::RemoteInspector::pushListingsSoon):
(Inspector::RemoteInspector::receivedIndicateMessage):
(Inspector::RemoteInspector::receivedProxyApplicationSetupMessage):

  • inspector/remote/cocoa/RemoteInspectorXPCConnection.mm:

(Inspector::RemoteInspectorXPCConnection::close):
(Inspector::RemoteInspectorXPCConnection::closeFromMessage):
(Inspector::RemoteInspectorXPCConnection::deserializeMessage):
(Inspector::RemoteInspectorXPCConnection::handleEvent):

  • inspector/remote/glib/RemoteInspectorGlib.cpp:

(Inspector::RemoteInspector::start):
(Inspector::RemoteInspector::setupConnection):
(Inspector::RemoteInspector::pushListingsSoon):
(Inspector::RemoteInspector::sendMessageToRemote):
(Inspector::RemoteInspector::receivedGetTargetListMessage):
(Inspector::RemoteInspector::receivedDataMessage):
(Inspector::RemoteInspector::receivedCloseMessage):
(Inspector::RemoteInspector::setup):

  • inspector/remote/socket/RemoteInspectorConnectionClient.cpp:

(Inspector::RemoteInspectorConnectionClient::didReceive):

  • inspector/remote/socket/RemoteInspectorSocket.cpp:

(Inspector::RemoteInspector::didClose):
(Inspector::RemoteInspector::start):
(Inspector::RemoteInspector::pushListingsSoon):
(Inspector::RemoteInspector::setup):
(Inspector::RemoteInspector::setupInspectorClient):
(Inspector::RemoteInspector::frontendDidClose):
(Inspector::RemoteInspector::sendMessageToBackend):
(Inspector::RemoteInspector::startAutomationSession):

  • inspector/remote/socket/RemoteInspectorSocketEndpoint.cpp:

(Inspector::RemoteInspectorSocketEndpoint::listenInet):
(Inspector::RemoteInspectorSocketEndpoint::isListening):
(Inspector::RemoteInspectorSocketEndpoint::workerThread):
(Inspector::RemoteInspectorSocketEndpoint::createClient):
(Inspector::RemoteInspectorSocketEndpoint::disconnect):
(Inspector::RemoteInspectorSocketEndpoint::invalidateClient):
(Inspector::RemoteInspectorSocketEndpoint::invalidateListener):
(Inspector::RemoteInspectorSocketEndpoint::getPort const):
(Inspector::RemoteInspectorSocketEndpoint::recvIfEnabled):
(Inspector::RemoteInspectorSocketEndpoint::sendIfEnabled):
(Inspector::RemoteInspectorSocketEndpoint::send):
(Inspector::RemoteInspectorSocketEndpoint::acceptInetSocketIfEnabled):

  • interpreter/CLoopStack.cpp:

(JSC::CLoopStack::addToCommittedByteCount):
(JSC::CLoopStack::committedByteCount):

  • jit/ExecutableAllocator.cpp:

(JSC::dumpJITMemory):

  • jit/ICStats.cpp:

(JSC::ICStats::ICStats):
(JSC::ICStats::~ICStats):

  • jit/JITThunks.cpp:

(JSC::JITThunks::ctiStub):
(JSC::JITThunks::existingCTIStub):
(JSC::JITThunks::ctiSlowPathFunctionStub):

  • jit/JITWorklist.cpp:

(JSC::JITWorklist::Plan::compileInThread):
(JSC::JITWorklist::Plan::isFinishedCompiling):
(JSC::JITWorklist::JITWorklist):
(JSC::JITWorklist::completeAllForVM):
(JSC::JITWorklist::poll):
(JSC::JITWorklist::compileLater):
(JSC::JITWorklist::finalizePlans):

  • parser/SourceProvider.cpp:

(JSC::SourceProvider::getID):

  • profiler/ProfilerDatabase.cpp:

(JSC::Profiler::Database::ensureBytecodesFor):
(JSC::Profiler::Database::notifyDestruction):
(JSC::Profiler::Database::addCompilation):
(JSC::Profiler::Database::logEvent):
(JSC::Profiler::Database::addDatabaseToAtExit):
(JSC::Profiler::Database::removeDatabaseFromAtExit):
(JSC::Profiler::Database::removeFirstAtExitDatabase):

  • profiler/ProfilerUID.cpp:

(JSC::Profiler::UID::create):

  • runtime/DeferredWorkTimer.cpp:

(JSC::DeferredWorkTimer::scheduleWorkSoon):
(JSC::DeferredWorkTimer::didResumeScriptExecutionOwner):

  • runtime/SamplingProfiler.cpp:

(JSC::SamplingProfiler::timerLoop):
(JSC::SamplingProfiler::shutdown):
(JSC::SamplingProfiler::start):
(JSC::SamplingProfiler::noticeCurrentThreadAsJSCExecutionThread):
(JSC::SamplingProfiler::noticeJSLockAcquisition):
(JSC::SamplingProfiler::noticeVMEntry):
(JSC::SamplingProfiler::registerForReportAtExit):

  • runtime/Watchdog.cpp:

(JSC::Watchdog::startTimer):
(JSC::Watchdog::willDestroyVM):

  • tools/VMInspector.cpp:

(JSC::VMInspector::isValidExecutableMemory):

  • wasm/WasmBBQPlan.cpp:

(JSC::Wasm::BBQPlan::work):

  • wasm/WasmEntryPlan.cpp:

(JSC::Wasm::EntryPlan::ThreadCountHolder::ThreadCountHolder):
(JSC::Wasm::EntryPlan::ThreadCountHolder::~ThreadCountHolder):

  • wasm/WasmOMGPlan.cpp:

(JSC::Wasm::OMGPlan::work):

  • wasm/WasmPlan.cpp:

(JSC::Wasm::Plan::addCompletionTask):
(JSC::Wasm::Plan::waitForCompletion):
(JSC::Wasm::Plan::tryRemoveContextAndCancelIfLast):

  • wasm/WasmSignature.cpp:

(JSC::Wasm::SignatureInformation::signatureFor):
(JSC::Wasm::SignatureInformation::tryCleanup):

  • wasm/WasmWorklist.cpp:

(JSC::Wasm::Worklist::enqueue):
(JSC::Wasm::Worklist::completePlanSynchronously):
(JSC::Wasm::Worklist::stopAllPlansForContext):
(JSC::Wasm::Worklist::Worklist):
(JSC::Wasm::Worklist::~Worklist):

Source/WebCore:

  • Modules/webaudio/AsyncAudioDecoder.cpp:

(WebCore::AsyncAudioDecoder::AsyncAudioDecoder):
(WebCore::AsyncAudioDecoder::runLoop):

  • Modules/webdatabase/Database.cpp:

(WebCore::Database::performClose):
(WebCore::Database::inProgressTransactionCompleted):
(WebCore::Database::hasPendingTransaction):
(WebCore::Database::runTransaction):

  • Modules/webdatabase/DatabaseThread.cpp:

(WebCore::DatabaseThread::start):
(WebCore::DatabaseThread::databaseThread):
(WebCore::DatabaseThread::recordDatabaseOpen):
(WebCore::DatabaseThread::recordDatabaseClosed):
(WebCore::DatabaseThread::hasPendingDatabaseActivity const):

  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::canEstablishDatabase):
(WebCore::DatabaseTracker::retryCanEstablishDatabase):
(WebCore::DatabaseTracker::maximumSize):
(WebCore::DatabaseTracker::fullPathForDatabase):
(WebCore::DatabaseTracker::origins):
(WebCore::DatabaseTracker::databaseNames):
(WebCore::DatabaseTracker::detailsForNameAndOrigin):
(WebCore::DatabaseTracker::setDatabaseDetails):
(WebCore::DatabaseTracker::doneCreatingDatabase):
(WebCore::DatabaseTracker::openDatabases):
(WebCore::DatabaseTracker::addOpenDatabase):
(WebCore::DatabaseTracker::removeOpenDatabase):
(WebCore::DatabaseTracker::originLockFor):
(WebCore::DatabaseTracker::quota):
(WebCore::DatabaseTracker::setQuota):
(WebCore::DatabaseTracker::deleteOrigin):
(WebCore::DatabaseTracker::deleteDatabase):
(WebCore::DatabaseTracker::deleteDatabaseFile):
(WebCore::DatabaseTracker::removeDeletedOpenedDatabases):

  • Modules/webdatabase/SQLCallbackWrapper.h:

(WebCore::SQLCallbackWrapper::clear):
(WebCore::SQLCallbackWrapper::unwrap):

  • Modules/webdatabase/SQLTransaction.cpp:

(WebCore::SQLTransaction::enqueueStatement):
(WebCore::SQLTransaction::checkAndHandleClosedDatabase):
(WebCore::SQLTransaction::getNextStatement):

  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::doCleanup):

  • accessibility/isolatedtree/AXIsolatedTree.cpp:

(WebCore::AXIsolatedTree::clear):
(WebCore::AXIsolatedTree::generateSubtree):
(WebCore::AXIsolatedTree::createSubtree):
(WebCore::AXIsolatedTree::updateNode):
(WebCore::AXIsolatedTree::updateNodeProperty):
(WebCore::AXIsolatedTree::updateChildren):
(WebCore::AXIsolatedTree::focusedNode):
(WebCore::AXIsolatedTree::rootNode):
(WebCore::AXIsolatedTree::setFocusedNodeID):
(WebCore::AXIsolatedTree::removeNode):
(WebCore::AXIsolatedTree::removeSubtree):
(WebCore::AXIsolatedTree::applyPendingChanges):

  • page/scrolling/mac/ScrollingTreeMac.mm:

(ScrollingTreeMac::scrollingNodeForPoint):
(ScrollingTreeMac::eventListenerRegionTypesForPoint const):

  • platform/AbortableTaskQueue.h:
  • platform/audio/cocoa/CARingBuffer.cpp:

(WebCore::CARingBufferStorageVector::flush):
(WebCore::CARingBufferStorageVector::setCurrentFrameBounds):

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::AVFWrapper::addToMap):
(WebCore::AVFWrapper::removeFromMap const):
(WebCore::AVFWrapper::periodicTimeObserverCallback):
(WebCore::AVFWrapper::processNotification):
(WebCore::AVFWrapper::loadPlayableCompletionCallback):
(WebCore::AVFWrapper::loadMetadataCompletionCallback):
(WebCore::AVFWrapper::seekCompletedCallback):
(WebCore::AVFWrapper::processCue):
(WebCore::AVFWrapper::legibleOutputCallback):
(WebCore::AVFWrapper::processShouldWaitForLoadingOfResource):
(WebCore::AVFWrapper::resourceLoaderShouldWaitForLoadingOfRequestedResource):

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

(-[WebCoreSharedBufferResourceLoaderDelegate setExpectedContentSize:]):
(-[WebCoreSharedBufferResourceLoaderDelegate updateData:complete:]):
(-[WebCoreSharedBufferResourceLoaderDelegate resourceLoader:shouldWaitForLoadingOfRequestedResource:]):
(-[WebCoreSharedBufferResourceLoaderDelegate resourceLoader:didCancelLoadingRequest:]):
(WebCore::ImageDecoderAVFObjC::setTrack):
(WebCore::ImageDecoderAVFObjC::createFrameImageAtIndex):

  • platform/graphics/gstreamer/ImageDecoderGStreamer.cpp:

(WebCore::ImageDecoderGStreamer::createFrameImageAtIndex):

  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:

(WebCore::InbandTextTrackPrivateGStreamer::handleSample):
(WebCore::InbandTextTrackPrivateGStreamer::notifyTrackOfSample):

  • platform/graphics/gstreamer/MainThreadNotifier.h:
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::parseInitDataFromProtectionMessage):
(WebCore::MediaPlayerPrivateGStreamer::handleProtectionEvent):

  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:

(WebCore::TrackPrivateBaseGStreamer::tagsChanged):
(WebCore::TrackPrivateBaseGStreamer::notifyTrackOfTagsChanged):

  • platform/graphics/gstreamer/VideoSinkGStreamer.cpp:

(VideoRenderRequestScheduler::start):
(VideoRenderRequestScheduler::stop):
(VideoRenderRequestScheduler::drain):
(VideoRenderRequestScheduler::requestRender):

  • platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp:

(transformInPlace):
(sinkEventHandler):
(webKitMediaCommonEncryptionDecryptIsFlushing):
(setContext):

  • platform/graphics/nicosia/NicosiaBuffer.cpp:

(Nicosia::Buffer::beginPainting):
(Nicosia::Buffer::completePainting):
(Nicosia::Buffer::waitUntilPaintingComplete):

  • platform/graphics/nicosia/NicosiaPlatformLayer.h:

(Nicosia::PlatformLayer::setSceneIntegration):
(Nicosia::PlatformLayer::createUpdateScope):
(Nicosia::CompositionLayer::updateState):
(Nicosia::CompositionLayer::flushState):
(Nicosia::CompositionLayer::commitState):
(Nicosia::CompositionLayer::accessPending):
(Nicosia::CompositionLayer::accessCommitted):

  • platform/graphics/nicosia/NicosiaScene.h:

(Nicosia::Scene::accessState):

  • platform/graphics/nicosia/NicosiaSceneIntegration.cpp:

(Nicosia::SceneIntegration::setClient):
(Nicosia::SceneIntegration::invalidate):
(Nicosia::SceneIntegration::requestUpdate):

  • platform/graphics/nicosia/texmap/NicosiaBackingStoreTextureMapperImpl.cpp:

(Nicosia::BackingStoreTextureMapperImpl::flushUpdate):
(Nicosia::BackingStoreTextureMapperImpl::takeUpdate):

  • platform/graphics/nicosia/texmap/NicosiaContentLayerTextureMapperImpl.cpp:

(Nicosia::ContentLayerTextureMapperImpl::~ContentLayerTextureMapperImpl):
(Nicosia::ContentLayerTextureMapperImpl::invalidateClient):
(Nicosia::ContentLayerTextureMapperImpl::flushUpdate):
(Nicosia::ContentLayerTextureMapperImpl::swapBuffersIfNeeded):

  • platform/graphics/nicosia/texmap/NicosiaImageBackingTextureMapperImpl.cpp:

(Nicosia::ImageBackingTextureMapperImpl::flushUpdate):
(Nicosia::ImageBackingTextureMapperImpl::takeUpdate):

  • platform/graphics/texmap/TextureMapperGCGLPlatformLayer.cpp:

(WebCore::TextureMapperGCGLPlatformLayer::swapBuffersIfNeeded):

  • platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:

(WebCore::MediaPlayerPrivateMediaFoundation::load):
(WebCore::MediaPlayerPrivateMediaFoundation::naturalSize const):
(WebCore::MediaPlayerPrivateMediaFoundation::addListener):
(WebCore::MediaPlayerPrivateMediaFoundation::removeListener):
(WebCore::MediaPlayerPrivateMediaFoundation::notifyDeleted):
(WebCore::MediaPlayerPrivateMediaFoundation::setNaturalSize):
(WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::Invoke):
(WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::onMediaPlayerDeleted):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::OnClockStart):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::OnClockStop):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::OnClockPause):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::OnClockRestart):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::OnClockSetRate):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::ProcessMessage):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::GetCurrentMediaType):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::InitServicePointers):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::ReleaseServicePointers):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::SetVideoWindow):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::GetVideoWindow):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::SetVideoPosition):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::GetVideoPosition):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::RepaintVideo):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoSamplePool::getSample):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoSamplePool::returnSample):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoSamplePool::areSamplesPending):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoSamplePool::initialize):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoSamplePool::clear):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoScheduler::stopScheduler):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoScheduler::scheduleSample):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoScheduler::processSamplesInQueue):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoScheduler::processSample):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoScheduler::schedulerThreadProcPrivate):
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::setVideoWindow):
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::setDestinationRect):
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::createVideoSamples):
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::checkDeviceState):
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::presentSample):
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::paintCurrentFrame):
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::createD3DDevice):

  • platform/image-decoders/ScalableImageDecoder.cpp:

(WebCore::ScalableImageDecoder::frameIsCompleteAtIndex const):
(WebCore::ScalableImageDecoder::frameHasAlphaAtIndex const):
(WebCore::ScalableImageDecoder::frameBytesAtIndex const):
(WebCore::ScalableImageDecoder::frameDurationAtIndex const):
(WebCore::ScalableImageDecoder::createFrameImageAtIndex):

  • platform/image-decoders/ScalableImageDecoder.h:
  • platform/ios/LegacyTileCache.mm:

(WebCore::LegacyTileCache::setTilesOpaque):
(WebCore::LegacyTileCache::doLayoutTiles):
(WebCore::LegacyTileCache::setCurrentScale):
(WebCore::LegacyTileCache::commitScaleChange):
(WebCore::LegacyTileCache::layoutTilesNow):
(WebCore::LegacyTileCache::layoutTilesNowForRect):
(WebCore::LegacyTileCache::removeAllNonVisibleTiles):
(WebCore::LegacyTileCache::removeAllTiles):
(WebCore::LegacyTileCache::removeForegroundTiles):
(WebCore::LegacyTileCache::setContentReplacementImage):
(WebCore::LegacyTileCache::contentReplacementImage const):
(WebCore::LegacyTileCache::tileCreationTimerFired):
(WebCore::LegacyTileCache::setNeedsDisplayInRect):
(WebCore::LegacyTileCache::updateTilingMode):
(WebCore::LegacyTileCache::setTilingMode):
(WebCore::LegacyTileCache::doPendingRepaints):
(WebCore::LegacyTileCache::flushSavedDisplayRects):
(WebCore::LegacyTileCache::prepareToDraw):

  • platform/ios/LegacyTileLayerPool.mm:

(WebCore::LegacyTileLayerPool::addLayer):
(WebCore::LegacyTileLayerPool::takeLayerWithSize):
(WebCore::LegacyTileLayerPool::setCapacity):
(WebCore::LegacyTileLayerPool::prune):
(WebCore::LegacyTileLayerPool::drain):

  • platform/ios/wak/WAKWindow.mm:

(-[WAKWindow setExposedScrollViewRect:]):
(-[WAKWindow exposedScrollViewRect]):

  • platform/ios/wak/WebCoreThread.mm:

(RunWebThread):
(StartWebThread):

  • platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceLibWebRTC.cpp:

(WebCore::RealtimeOutgoingAudioSourceLibWebRTC::audioSamplesAvailable):
(WebCore::RealtimeOutgoingAudioSourceLibWebRTC::pullAudioData):

  • platform/network/cf/FormDataStreamCFNet.cpp:

(WebCore::openNextStream):
(WebCore::formFinalize):
(WebCore::formClose):

  • platform/network/curl/CurlRequest.cpp:

(WebCore::CurlRequest::setRequestPaused):
(WebCore::CurlRequest::setCallbackPaused):
(WebCore::CurlRequest::pausedStatusChanged):
(WebCore::CurlRequest::enableDownloadToFile):
(WebCore::CurlRequest::getDownloadedFilePath):
(WebCore::CurlRequest::writeDataToDownloadFileIfEnabled):
(WebCore::CurlRequest::closeDownloadFile):
(WebCore::CurlRequest::cleanupDownloadFile):

  • platform/network/curl/CurlSSLHandle.cpp:

(WebCore::CurlSSLHandle::allowAnyHTTPSCertificatesForHost):
(WebCore::CurlSSLHandle::canIgnoreAnyHTTPSCertificatesForHost const):
(WebCore::CurlSSLHandle::setClientCertificateInfo):
(WebCore::CurlSSLHandle::getSSLClientCertificate const):

  • platform/sql/SQLiteDatabase.cpp:

(WebCore::SQLiteDatabase::close):
(WebCore::SQLiteDatabase::maximumSize):
(WebCore::SQLiteDatabase::setMaximumSize):
(WebCore::SQLiteDatabase::pageSize):
(WebCore::SQLiteDatabase::freeSpaceSize):
(WebCore::SQLiteDatabase::totalSize):
(WebCore::SQLiteDatabase::runIncrementalVacuumCommand):
(WebCore::SQLiteDatabase::interrupt):
(WebCore::SQLiteDatabase::setAuthorizer):
(WebCore::constructAndPrepareStatement):

  • platform/sql/SQLiteStatement.cpp:

(WebCore::SQLiteStatement::step):

Source/WebKit:

  • NetworkProcess/IndexedDB/WebIDBServer.cpp:

(WebKit::m_closeCallback):
(WebKit::WebIDBServer::getOrigins):
(WebKit::WebIDBServer::closeAndDeleteDatabasesModifiedSince):
(WebKit::WebIDBServer::closeAndDeleteDatabasesForOrigins):
(WebKit::WebIDBServer::renameOrigin):
(WebKit::WebIDBServer::openDatabase):
(WebKit::WebIDBServer::deleteDatabase):
(WebKit::WebIDBServer::abortTransaction):
(WebKit::WebIDBServer::commitTransaction):
(WebKit::WebIDBServer::didFinishHandlingVersionChangeTransaction):
(WebKit::WebIDBServer::createObjectStore):
(WebKit::WebIDBServer::deleteObjectStore):
(WebKit::WebIDBServer::renameObjectStore):
(WebKit::WebIDBServer::clearObjectStore):
(WebKit::WebIDBServer::createIndex):
(WebKit::WebIDBServer::deleteIndex):
(WebKit::WebIDBServer::renameIndex):
(WebKit::WebIDBServer::putOrAdd):
(WebKit::WebIDBServer::getRecord):
(WebKit::WebIDBServer::getAllRecords):
(WebKit::WebIDBServer::getCount):
(WebKit::WebIDBServer::deleteRecord):
(WebKit::WebIDBServer::openCursor):
(WebKit::WebIDBServer::iterateCursor):
(WebKit::WebIDBServer::establishTransaction):
(WebKit::WebIDBServer::databaseConnectionPendingClose):
(WebKit::WebIDBServer::databaseConnectionClosed):
(WebKit::WebIDBServer::abortOpenAndUpgradeNeeded):
(WebKit::WebIDBServer::didFireVersionChangeEvent):
(WebKit::WebIDBServer::openDBRequestCancelled):
(WebKit::WebIDBServer::getAllDatabaseNamesAndVersions):
(WebKit::WebIDBServer::addConnection):
(WebKit::WebIDBServer::removeConnection):
(WebKit::WebIDBServer::close):

  • NetworkProcess/cache/CacheStorageEngine.cpp:

(WebKit::CacheStorage::Engine::writeSizeFile):
(WebKit::CacheStorage::Engine::readSizeFile):
(WebKit::CacheStorage::Engine::clearAllCachesFromDisk):
(WebKit::CacheStorage::Engine::deleteNonEmptyDirectoryOnBackgroundThread):

  • NetworkProcess/glib/DNSCache.cpp:

(WebKit::DNSCache::lookup):
(WebKit::DNSCache::update):
(WebKit::DNSCache::removeExpiredResponsesFired):
(WebKit::DNSCache::clear):

  • Shared/CoordinatedGraphics/threadedcompositor/CompositingRunLoop.cpp:

(WebKit::CompositingRunLoop::suspend):
(WebKit::CompositingRunLoop::resume):
(WebKit::CompositingRunLoop::scheduleUpdate):
(WebKit::CompositingRunLoop::stopUpdates):
(WebKit::CompositingRunLoop::updateTimerFired):

  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:

(WebKit::m_displayRefreshMonitor):
(WebKit::ThreadedCompositor::setScaleFactor):
(WebKit::ThreadedCompositor::setScrollPosition):
(WebKit::ThreadedCompositor::setViewportSize):
(WebKit::ThreadedCompositor::renderLayerTree):
(WebKit::ThreadedCompositor::sceneUpdateFinished):
(WebKit::ThreadedCompositor::updateSceneState):

  • UIProcess/API/glib/IconDatabase.cpp:

(WebKit::IconDatabase::populatePageURLToIconURLMap):
(WebKit::IconDatabase::clearLoadedIconsTimerFired):
(WebKit::IconDatabase::checkIconURLAndSetPageURLIfNeeded):
(WebKit::IconDatabase::loadIconForPageURL):
(WebKit::IconDatabase::iconURLForPageURL):
(WebKit::IconDatabase::setIconForPageURL):
(WebKit::IconDatabase::clear):

Source/WebKitLegacy:

  • Storage/InProcessIDBServer.cpp:

(InProcessIDBServer::InProcessIDBServer):
(InProcessIDBServer::deleteDatabase):
(InProcessIDBServer::openDatabase):
(InProcessIDBServer::abortTransaction):
(InProcessIDBServer::commitTransaction):
(InProcessIDBServer::didFinishHandlingVersionChangeTransaction):
(InProcessIDBServer::createObjectStore):
(InProcessIDBServer::deleteObjectStore):
(InProcessIDBServer::renameObjectStore):
(InProcessIDBServer::clearObjectStore):
(InProcessIDBServer::createIndex):
(InProcessIDBServer::deleteIndex):
(InProcessIDBServer::renameIndex):
(InProcessIDBServer::putOrAdd):
(InProcessIDBServer::getRecord):
(InProcessIDBServer::getAllRecords):
(InProcessIDBServer::getCount):
(InProcessIDBServer::deleteRecord):
(InProcessIDBServer::openCursor):
(InProcessIDBServer::iterateCursor):
(InProcessIDBServer::establishTransaction):
(InProcessIDBServer::databaseConnectionPendingClose):
(InProcessIDBServer::databaseConnectionClosed):
(InProcessIDBServer::abortOpenAndUpgradeNeeded):
(InProcessIDBServer::didFireVersionChangeEvent):
(InProcessIDBServer::openDBRequestCancelled):
(InProcessIDBServer::getAllDatabaseNamesAndVersions):
(InProcessIDBServer::closeAndDeleteDatabasesModifiedSince):

  • Storage/StorageAreaSync.cpp:

(WebKit::StorageAreaSync::syncTimerFired):
(WebKit::StorageAreaSync::performSync):

  • Storage/StorageTracker.cpp:

(WebKit::StorageTracker::finishedImportingOriginIdentifiers):
(WebKit::StorageTracker::syncImportOriginIdentifiers):
(WebKit::StorageTracker::syncFileSystemAndTrackerDatabase):
(WebKit::StorageTracker::setOriginDetails):
(WebKit::StorageTracker::syncSetOriginDetails):
(WebKit::StorageTracker::origins):
(WebKit::StorageTracker::deleteAllOrigins):
(WebKit::StorageTracker::syncDeleteAllOrigins):
(WebKit::StorageTracker::deleteOrigin):
(WebKit::StorageTracker::syncDeleteOrigin):
(WebKit::StorageTracker::canDeleteOrigin):
(WebKit::StorageTracker::cancelDeletingOrigin):
(WebKit::StorageTracker::diskUsageForOrigin):

Source/WebKitLegacy/mac:

  • WebView/WebView.mm:

(-[WebView _synchronizeCustomFixedPositionLayoutRect]):
(-[WebView _setCustomFixedPositionLayoutRectInWebThread:synchronize:]):
(-[WebView _setCustomFixedPositionLayoutRect:]):
(-[WebView _fetchCustomFixedPositionLayoutRect:]):

Source/WebKitLegacy/win:

  • Plugins/PluginMainThreadScheduler.cpp:

(WebCore::PluginMainThreadScheduler::scheduleCall):
(WebCore::PluginMainThreadScheduler::registerPlugin):
(WebCore::PluginMainThreadScheduler::unregisterPlugin):
(WebCore::PluginMainThreadScheduler::dispatchCallsForPlugin):

Source/WTF:

  • benchmarks/LockSpeedTest.cpp:
  • wtf/AutomaticThread.cpp:

(WTF::AutomaticThread::~AutomaticThread):
(WTF::AutomaticThread::join):
(WTF::AutomaticThread::start):

  • wtf/AutomaticThread.h:
  • wtf/MetaAllocator.cpp:

(WTF::MetaAllocatorHandle::shrink):
(WTF::MetaAllocator::addFreshFreeSpace):
(WTF::MetaAllocator::debugFreeSpaceSize):

  • wtf/ParallelHelperPool.cpp:

(WTF::ParallelHelperClient::ParallelHelperClient):
(WTF::ParallelHelperClient::~ParallelHelperClient):
(WTF::ParallelHelperClient::setTask):
(WTF::ParallelHelperClient::finish):
(WTF::ParallelHelperClient::doSomeHelping):
(WTF::ParallelHelperClient::runTask):
(WTF::ParallelHelperPool::~ParallelHelperPool):
(WTF::ParallelHelperPool::ensureThreads):
(WTF::ParallelHelperPool::doSomeHelping):

  • wtf/Seconds.cpp:

(WTF::sleep):

  • wtf/TimeWithDynamicClockType.cpp:

(WTF::sleep):

  • wtf/WorkerPool.cpp:

(WTF::WorkerPool::WorkerPool):
(WTF::WorkerPool::~WorkerPool):
(WTF::WorkerPool::postTask):

  • wtf/posix/ThreadingPOSIX.cpp:

(WTF::Thread::suspend):
(WTF::Thread::resume):
(WTF::Thread::getRegisters):

  • wtf/win/DbgHelperWin.cpp:

(WTF::DbgHelper::SymFromAddress):

  • wtf/win/ThreadingWin.cpp:

(WTF::Thread::suspend):
(WTF::Thread::resume):
(WTF::Thread::getRegisters):

Tools:

  • TestWebKitAPI/Tests/WTF/WorkQueue.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WTF/glib/WorkQueueGLib.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:

(TestWebKitAPI::DeterministicScheduler::ThreadContext::waitMyTurn):
(TestWebKitAPI::DeterministicScheduler::ThreadContext::yieldToThread):

7:16 AM Changeset in webkit [277919] by Devin Rousso
  • 2 edits in trunk/Source/WebCore

ASSERTION FAILED: Component at index 1 is 1.000000 and is greater than the allowed maximum 1.000000
https://bugs.webkit.org/show_bug.cgi?id=226118
<rdar://problem/78333590>

Reviewed by Sam Weinig.

Covered by SampledPageTopColor tests.

  • platform/graphics/cg/ColorCG.cpp:

(WebCore::roundAndClampToSRGBALossy):
Use makeFromComponentsClamping to actually clamp the component values instead of assuming
that the CGColorRef will be sRGB (though it still assumes an RGB color space/format).

6:54 AM Changeset in webkit [277918] by Adrian Perez de Castro
  • 8 edits
    1 move
    5 deletes in trunk

[Tools][run-webkit-tests] Remove more leftover tests webserver PHP remains
https://bugs.webkit.org/show_bug.cgi?id=226089

Reviewed by Alexey Proskuryakov.

Remove leftover PHP module configurations used on Linux now that PHP is not used anymore.

Tools:

  • Scripts/webkitpy/port/base.py:

(Port._debian_php_version): Removed.
(Port._fedora_php_version): Removed.
(Port._is_fedora_php_version_7): Removed.
(Port._apache_config_file_name_for_platform): Modofied to not use the removed
helper methods.

  • gtk/install-dependencies: Remove PHP packages.
  • wpe/install-dependencies: Ditto.

LayoutTests:

  • http/conf/archlinux-httpd.conf: Removed PHP module configuration.
  • http/conf/debian-httpd-2.4-php7.0.conf: Removed.
  • http/conf/debian-httpd-2.4-php7.1.conf: Removed.
  • http/conf/debian-httpd-2.4-php7.2.conf: Removed.
  • http/conf/debian-httpd-2.4-php7.4.conf: Removed.
  • http/conf/debian-httpd-2.4.conf: Renamed from LayoutTests/http/conf/debian-httpd-2.4-php7.3.conf

and removed PHP module configuration.

  • http/conf/fedora-httpd-2.2.conf: Removed PHP module configuration.
  • http/conf/fedora-httpd-2.4-php7.conf: Removed.
  • http/conf/fedora-httpd-2.4.conf: Removed PHP module configuration.
4:17 AM Changeset in webkit [277917] by commit-queue@webkit.org
  • 120 edits in trunk

Unreviewed, reverting r277913.
https://bugs.webkit.org/show_bug.cgi?id=226140

Caused multiple layout-test crash on mac debug queues

Reverted changeset:

"Replace LockHolder with Locker in local variables"
https://bugs.webkit.org/show_bug.cgi?id=226133
https://trac.webkit.org/changeset/277913

2:00 AM Changeset in webkit [277916] by commit-queue@webkit.org
  • 2 edits in trunk/Tools

[ Debug ] TestWebKitAPI.IPCTestingAPI.CanDetectNilReplyBlocks (API-tests) is a constant crash
https://bugs.webkit.org/show_bug.cgi?id=226125

Patch by Julian Gonzalez <julian_a_gonzalez@apple.com> on 2021-05-22
Reviewed by Ryosuke Niwa.

Turn this test off for Debug.

  • TestWebKitAPI/Tests/WebKitCocoa/IPCTestingAPI.mm:
1:22 AM Changeset in webkit [277915] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Detect invalid InlinePathData in StrokeInlinePath
https://bugs.webkit.org/show_bug.cgi?id=225691

Patch by Rob Buis <rbuis@igalia.com> on 2021-05-22
Reviewed by Ryosuke Niwa.

Detect invalid InlinePathData in StrokeInlinePath.

  • platform/graphics/displaylists/DisplayListItems.h:

(WebCore::DisplayList::StrokeInlinePath::StrokeInlinePath):
(WebCore::DisplayList::StrokeInlinePath::path const): Deleted.

May 21, 2021:

11:39 PM Changeset in webkit [277914] by Chris Dumez
  • 6 edits in trunk/Source

Remove WTF::holdLock() / WTF::holdLockIf()
https://bugs.webkit.org/show_bug.cgi?id=226135

Reviewed by Darin Adler.

Remove WTF::holdLock() / WTF::holdLockIf() because they are not compatible with
Clang Thread Safety Analysis. All call sites have been converted to use the Locker
constructor directly.

Source/JavaScriptCore:

  • heap/LockDuringMarking.h:

(JSC::lockDuringMarking):

Source/WebCore:

  • dom/Node.cpp:

(WebCore::Node::eventTargetDataConcurrently):

Source/WTF:

  • wtf/Locker.h:
10:49 PM Changeset in webkit [277913] by Chris Dumez
  • 120 edits in trunk

Replace LockHolder with Locker in local variables
https://bugs.webkit.org/show_bug.cgi?id=226133

Reviewed by Darin Adler.

Replace LockHolder with Locker in local variables. It is shorter and it allows switching the lock
type more easily since the compiler with deduce the lock type T for Locker<T>.

Source/JavaScriptCore:

  • API/JSCallbackObject.h:

(JSC::JSCallbackObjectData::JSPrivatePropertyMap::setPrivateProperty):
(JSC::JSCallbackObjectData::JSPrivatePropertyMap::deletePrivateProperty):
(JSC::JSCallbackObjectData::JSPrivatePropertyMap::visitChildren):

  • API/JSValue.mm:

(handerForStructTag):

  • API/tests/testapi.cpp:

(testCAPIViaCpp):

  • assembler/testmasm.cpp:

(JSC::run):

  • b3/air/testair.cpp:
  • b3/testb3_1.cpp:

(run):

  • bytecode/DirectEvalCodeCache.cpp:

(JSC::DirectEvalCodeCache::setSlow):
(JSC::DirectEvalCodeCache::clear):
(JSC::DirectEvalCodeCache::visitAggregateImpl):

  • bytecode/SuperSampler.cpp:

(JSC::initializeSuperSampler):
(JSC::resetSuperSamplerState):
(JSC::printSuperSamplerState):
(JSC::enableSuperSampler):
(JSC::disableSuperSampler):

  • dfg/DFGCommonData.cpp:

(JSC::DFG::CommonData::invalidate):
(JSC::DFG::CommonData::~CommonData):
(JSC::DFG::CommonData::installVMTrapBreakpoints):
(JSC::DFG::codeBlockForVMTrapPC):

  • dfg/DFGPlan.cpp:

(JSC::DFG::Plan::cleanMustHandleValuesIfNecessary):

  • dfg/DFGWorklist.cpp:

(JSC::DFG::Worklist::~Worklist):
(JSC::DFG::Worklist::finishCreation):
(JSC::DFG::Worklist::isActiveForVM const):
(JSC::DFG::Worklist::enqueue):
(JSC::DFG::Worklist::compilationState):
(JSC::DFG::Worklist::waitUntilAllPlansForVMAreReady):
(JSC::DFG::Worklist::removeAllReadyPlansForVM):
(JSC::DFG::Worklist::completeAllReadyPlansForVM):
(JSC::DFG::Worklist::visitWeakReferences):
(JSC::DFG::Worklist::removeDeadPlans):
(JSC::DFG::Worklist::removeNonCompilingPlansForVM):
(JSC::DFG::Worklist::queueLength):
(JSC::DFG::Worklist::dump const):
(JSC::DFG::Worklist::setNumberOfThreads):

  • dfg/DFGWorklistInlines.h:

(JSC::DFG::Worklist::iterateCodeBlocksForGC):

  • disassembler/Disassembler.cpp:
  • heap/BlockDirectory.cpp:

(JSC::BlockDirectory::addBlock):

  • heap/CodeBlockSetInlines.h:

(JSC::CodeBlockSet::iterateCurrentlyExecuting):

  • heap/ConservativeRoots.cpp:

(JSC::ConservativeRoots::add):

  • heap/Heap.cpp:

(JSC::Heap::Heap):
(JSC::Heap::lastChanceToFinalize):
(JSC::Heap::collectAsync):
(JSC::Heap::runBeginPhase):
(JSC::Heap::waitForCollector):
(JSC::Heap::requestCollection):
(JSC::Heap::notifyIsSafeToCollect):

  • heap/SlotVisitor.cpp:

(JSC::SlotVisitor::didReachTermination):

  • inspector/agents/InspectorScriptProfilerAgent.cpp:

(Inspector::InspectorScriptProfilerAgent::startTracking):
(Inspector::InspectorScriptProfilerAgent::trackingComplete):
(Inspector::InspectorScriptProfilerAgent::stopSamplingWhenDisconnecting):

  • inspector/remote/RemoteConnectionToTarget.cpp:

(Inspector::RemoteConnectionToTarget::setup):
(Inspector::RemoteConnectionToTarget::sendMessageToTarget):
(Inspector::RemoteConnectionToTarget::close):
(Inspector::RemoteConnectionToTarget::targetClosed):

  • inspector/remote/RemoteInspector.cpp:

(Inspector::RemoteInspector::registerTarget):
(Inspector::RemoteInspector::unregisterTarget):
(Inspector::RemoteInspector::updateTarget):
(Inspector::RemoteInspector::updateClientCapabilities):
(Inspector::RemoteInspector::setClient):
(Inspector::RemoteInspector::setupFailed):
(Inspector::RemoteInspector::setupCompleted):
(Inspector::RemoteInspector::stop):

  • inspector/remote/cocoa/RemoteConnectionToTargetCocoa.mm:

(Inspector::RemoteTargetHandleRunSourceGlobal):
(Inspector::RemoteTargetQueueTaskOnGlobalQueue):
(Inspector::RemoteTargetHandleRunSourceWithInfo):
(Inspector::RemoteConnectionToTarget::setup):
(Inspector::RemoteConnectionToTarget::targetClosed):
(Inspector::RemoteConnectionToTarget::close):
(Inspector::RemoteConnectionToTarget::sendMessageToTarget):
(Inspector::RemoteConnectionToTarget::queueTaskOnPrivateRunLoop):

  • inspector/remote/cocoa/RemoteInspectorCocoa.mm:

(Inspector::RemoteInspector::updateAutomaticInspectionCandidate):
(Inspector::RemoteInspector::sendMessageToRemote):
(Inspector::RemoteInspector::start):
(Inspector::RemoteInspector::setupXPCConnectionIfNeeded):
(Inspector::RemoteInspector::setParentProcessInformation):
(Inspector::RemoteInspector::xpcConnectionReceivedMessage):
(Inspector::RemoteInspector::xpcConnectionFailed):
(Inspector::RemoteInspector::pushListingsSoon):
(Inspector::RemoteInspector::receivedIndicateMessage):
(Inspector::RemoteInspector::receivedProxyApplicationSetupMessage):

  • inspector/remote/cocoa/RemoteInspectorXPCConnection.mm:

(Inspector::RemoteInspectorXPCConnection::close):
(Inspector::RemoteInspectorXPCConnection::closeFromMessage):
(Inspector::RemoteInspectorXPCConnection::deserializeMessage):
(Inspector::RemoteInspectorXPCConnection::handleEvent):

  • inspector/remote/glib/RemoteInspectorGlib.cpp:

(Inspector::RemoteInspector::start):
(Inspector::RemoteInspector::setupConnection):
(Inspector::RemoteInspector::pushListingsSoon):
(Inspector::RemoteInspector::sendMessageToRemote):
(Inspector::RemoteInspector::receivedGetTargetListMessage):
(Inspector::RemoteInspector::receivedDataMessage):
(Inspector::RemoteInspector::receivedCloseMessage):
(Inspector::RemoteInspector::setup):

  • inspector/remote/socket/RemoteInspectorConnectionClient.cpp:

(Inspector::RemoteInspectorConnectionClient::didReceive):

  • inspector/remote/socket/RemoteInspectorSocket.cpp:

(Inspector::RemoteInspector::didClose):
(Inspector::RemoteInspector::start):
(Inspector::RemoteInspector::pushListingsSoon):
(Inspector::RemoteInspector::setup):
(Inspector::RemoteInspector::setupInspectorClient):
(Inspector::RemoteInspector::frontendDidClose):
(Inspector::RemoteInspector::sendMessageToBackend):
(Inspector::RemoteInspector::startAutomationSession):

  • inspector/remote/socket/RemoteInspectorSocketEndpoint.cpp:

(Inspector::RemoteInspectorSocketEndpoint::listenInet):
(Inspector::RemoteInspectorSocketEndpoint::isListening):
(Inspector::RemoteInspectorSocketEndpoint::workerThread):
(Inspector::RemoteInspectorSocketEndpoint::createClient):
(Inspector::RemoteInspectorSocketEndpoint::disconnect):
(Inspector::RemoteInspectorSocketEndpoint::invalidateClient):
(Inspector::RemoteInspectorSocketEndpoint::invalidateListener):
(Inspector::RemoteInspectorSocketEndpoint::getPort const):
(Inspector::RemoteInspectorSocketEndpoint::recvIfEnabled):
(Inspector::RemoteInspectorSocketEndpoint::sendIfEnabled):
(Inspector::RemoteInspectorSocketEndpoint::send):
(Inspector::RemoteInspectorSocketEndpoint::acceptInetSocketIfEnabled):

  • interpreter/CLoopStack.cpp:

(JSC::CLoopStack::addToCommittedByteCount):
(JSC::CLoopStack::committedByteCount):

  • jit/ExecutableAllocator.cpp:

(JSC::dumpJITMemory):

  • jit/ICStats.cpp:

(JSC::ICStats::ICStats):
(JSC::ICStats::~ICStats):

  • jit/JITThunks.cpp:

(JSC::JITThunks::ctiStub):
(JSC::JITThunks::existingCTIStub):
(JSC::JITThunks::ctiSlowPathFunctionStub):

  • jit/JITWorklist.cpp:

(JSC::JITWorklist::Plan::compileInThread):
(JSC::JITWorklist::Plan::isFinishedCompiling):
(JSC::JITWorklist::JITWorklist):
(JSC::JITWorklist::completeAllForVM):
(JSC::JITWorklist::poll):
(JSC::JITWorklist::compileLater):
(JSC::JITWorklist::finalizePlans):

  • parser/SourceProvider.cpp:

(JSC::SourceProvider::getID):

  • profiler/ProfilerDatabase.cpp:

(JSC::Profiler::Database::ensureBytecodesFor):
(JSC::Profiler::Database::notifyDestruction):
(JSC::Profiler::Database::addCompilation):
(JSC::Profiler::Database::logEvent):
(JSC::Profiler::Database::addDatabaseToAtExit):
(JSC::Profiler::Database::removeDatabaseFromAtExit):
(JSC::Profiler::Database::removeFirstAtExitDatabase):

  • profiler/ProfilerUID.cpp:

(JSC::Profiler::UID::create):

  • runtime/DeferredWorkTimer.cpp:

(JSC::DeferredWorkTimer::scheduleWorkSoon):
(JSC::DeferredWorkTimer::didResumeScriptExecutionOwner):

  • runtime/SamplingProfiler.cpp:

(JSC::SamplingProfiler::timerLoop):
(JSC::SamplingProfiler::shutdown):
(JSC::SamplingProfiler::start):
(JSC::SamplingProfiler::noticeCurrentThreadAsJSCExecutionThread):
(JSC::SamplingProfiler::noticeJSLockAcquisition):
(JSC::SamplingProfiler::noticeVMEntry):
(JSC::SamplingProfiler::registerForReportAtExit):

  • runtime/Watchdog.cpp:

(JSC::Watchdog::startTimer):
(JSC::Watchdog::willDestroyVM):

  • tools/VMInspector.cpp:

(JSC::VMInspector::isValidExecutableMemory):

  • wasm/WasmBBQPlan.cpp:

(JSC::Wasm::BBQPlan::work):

  • wasm/WasmEntryPlan.cpp:

(JSC::Wasm::EntryPlan::ThreadCountHolder::ThreadCountHolder):
(JSC::Wasm::EntryPlan::ThreadCountHolder::~ThreadCountHolder):

  • wasm/WasmOMGPlan.cpp:

(JSC::Wasm::OMGPlan::work):

  • wasm/WasmPlan.cpp:

(JSC::Wasm::Plan::addCompletionTask):
(JSC::Wasm::Plan::waitForCompletion):
(JSC::Wasm::Plan::tryRemoveContextAndCancelIfLast):

  • wasm/WasmSignature.cpp:

(JSC::Wasm::SignatureInformation::signatureFor):
(JSC::Wasm::SignatureInformation::tryCleanup):

  • wasm/WasmWorklist.cpp:

(JSC::Wasm::Worklist::enqueue):
(JSC::Wasm::Worklist::completePlanSynchronously):
(JSC::Wasm::Worklist::stopAllPlansForContext):
(JSC::Wasm::Worklist::Worklist):
(JSC::Wasm::Worklist::~Worklist):

Source/WebCore:

  • Modules/webaudio/AsyncAudioDecoder.cpp:

(WebCore::AsyncAudioDecoder::AsyncAudioDecoder):
(WebCore::AsyncAudioDecoder::runLoop):

  • Modules/webdatabase/Database.cpp:

(WebCore::Database::performClose):
(WebCore::Database::inProgressTransactionCompleted):
(WebCore::Database::hasPendingTransaction):
(WebCore::Database::runTransaction):

  • Modules/webdatabase/DatabaseThread.cpp:

(WebCore::DatabaseThread::start):
(WebCore::DatabaseThread::databaseThread):
(WebCore::DatabaseThread::recordDatabaseOpen):
(WebCore::DatabaseThread::recordDatabaseClosed):
(WebCore::DatabaseThread::hasPendingDatabaseActivity const):

  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::canEstablishDatabase):
(WebCore::DatabaseTracker::retryCanEstablishDatabase):
(WebCore::DatabaseTracker::maximumSize):
(WebCore::DatabaseTracker::fullPathForDatabase):
(WebCore::DatabaseTracker::origins):
(WebCore::DatabaseTracker::databaseNames):
(WebCore::DatabaseTracker::detailsForNameAndOrigin):
(WebCore::DatabaseTracker::setDatabaseDetails):
(WebCore::DatabaseTracker::doneCreatingDatabase):
(WebCore::DatabaseTracker::openDatabases):
(WebCore::DatabaseTracker::addOpenDatabase):
(WebCore::DatabaseTracker::removeOpenDatabase):
(WebCore::DatabaseTracker::originLockFor):
(WebCore::DatabaseTracker::quota):
(WebCore::DatabaseTracker::setQuota):
(WebCore::DatabaseTracker::deleteOrigin):
(WebCore::DatabaseTracker::deleteDatabase):
(WebCore::DatabaseTracker::deleteDatabaseFile):
(WebCore::DatabaseTracker::removeDeletedOpenedDatabases):

  • Modules/webdatabase/SQLCallbackWrapper.h:

(WebCore::SQLCallbackWrapper::clear):
(WebCore::SQLCallbackWrapper::unwrap):

  • Modules/webdatabase/SQLTransaction.cpp:

(WebCore::SQLTransaction::enqueueStatement):
(WebCore::SQLTransaction::checkAndHandleClosedDatabase):
(WebCore::SQLTransaction::getNextStatement):

  • Modules/webdatabase/SQLTransactionBackend.cpp:

(WebCore::SQLTransactionBackend::doCleanup):

  • accessibility/isolatedtree/AXIsolatedTree.cpp:

(WebCore::AXIsolatedTree::clear):
(WebCore::AXIsolatedTree::generateSubtree):
(WebCore::AXIsolatedTree::createSubtree):
(WebCore::AXIsolatedTree::updateNode):
(WebCore::AXIsolatedTree::updateNodeProperty):
(WebCore::AXIsolatedTree::updateChildren):
(WebCore::AXIsolatedTree::focusedNode):
(WebCore::AXIsolatedTree::rootNode):
(WebCore::AXIsolatedTree::setFocusedNodeID):
(WebCore::AXIsolatedTree::removeNode):
(WebCore::AXIsolatedTree::removeSubtree):
(WebCore::AXIsolatedTree::applyPendingChanges):

  • page/scrolling/mac/ScrollingTreeMac.mm:

(ScrollingTreeMac::scrollingNodeForPoint):
(ScrollingTreeMac::eventListenerRegionTypesForPoint const):

  • platform/AbortableTaskQueue.h:
  • platform/audio/cocoa/CARingBuffer.cpp:

(WebCore::CARingBufferStorageVector::flush):
(WebCore::CARingBufferStorageVector::setCurrentFrameBounds):

  • platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:

(WebCore::AVFWrapper::addToMap):
(WebCore::AVFWrapper::removeFromMap const):
(WebCore::AVFWrapper::periodicTimeObserverCallback):
(WebCore::AVFWrapper::processNotification):
(WebCore::AVFWrapper::loadPlayableCompletionCallback):
(WebCore::AVFWrapper::loadMetadataCompletionCallback):
(WebCore::AVFWrapper::seekCompletedCallback):
(WebCore::AVFWrapper::processCue):
(WebCore::AVFWrapper::legibleOutputCallback):
(WebCore::AVFWrapper::processShouldWaitForLoadingOfResource):
(WebCore::AVFWrapper::resourceLoaderShouldWaitForLoadingOfRequestedResource):

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

(-[WebCoreSharedBufferResourceLoaderDelegate setExpectedContentSize:]):
(-[WebCoreSharedBufferResourceLoaderDelegate updateData:complete:]):
(-[WebCoreSharedBufferResourceLoaderDelegate resourceLoader:shouldWaitForLoadingOfRequestedResource:]):
(-[WebCoreSharedBufferResourceLoaderDelegate resourceLoader:didCancelLoadingRequest:]):
(WebCore::ImageDecoderAVFObjC::setTrack):
(WebCore::ImageDecoderAVFObjC::createFrameImageAtIndex):

  • platform/graphics/gstreamer/ImageDecoderGStreamer.cpp:

(WebCore::ImageDecoderGStreamer::createFrameImageAtIndex):

  • platform/graphics/gstreamer/InbandTextTrackPrivateGStreamer.cpp:

(WebCore::InbandTextTrackPrivateGStreamer::handleSample):
(WebCore::InbandTextTrackPrivateGStreamer::notifyTrackOfSample):

  • platform/graphics/gstreamer/MainThreadNotifier.h:
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::parseInitDataFromProtectionMessage):
(WebCore::MediaPlayerPrivateGStreamer::handleProtectionEvent):

  • platform/graphics/gstreamer/TrackPrivateBaseGStreamer.cpp:

(WebCore::TrackPrivateBaseGStreamer::tagsChanged):
(WebCore::TrackPrivateBaseGStreamer::notifyTrackOfTagsChanged):

  • platform/graphics/gstreamer/VideoSinkGStreamer.cpp:

(VideoRenderRequestScheduler::start):
(VideoRenderRequestScheduler::stop):
(VideoRenderRequestScheduler::drain):
(VideoRenderRequestScheduler::requestRender):

  • platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp:

(transformInPlace):
(sinkEventHandler):
(webKitMediaCommonEncryptionDecryptIsFlushing):
(setContext):

  • platform/graphics/nicosia/NicosiaBuffer.cpp:

(Nicosia::Buffer::beginPainting):
(Nicosia::Buffer::completePainting):
(Nicosia::Buffer::waitUntilPaintingComplete):

  • platform/graphics/nicosia/NicosiaPlatformLayer.h:

(Nicosia::PlatformLayer::setSceneIntegration):
(Nicosia::PlatformLayer::createUpdateScope):
(Nicosia::CompositionLayer::updateState):
(Nicosia::CompositionLayer::flushState):
(Nicosia::CompositionLayer::commitState):
(Nicosia::CompositionLayer::accessPending):
(Nicosia::CompositionLayer::accessCommitted):

  • platform/graphics/nicosia/NicosiaScene.h:

(Nicosia::Scene::accessState):

  • platform/graphics/nicosia/NicosiaSceneIntegration.cpp:

(Nicosia::SceneIntegration::setClient):
(Nicosia::SceneIntegration::invalidate):
(Nicosia::SceneIntegration::requestUpdate):

  • platform/graphics/nicosia/texmap/NicosiaBackingStoreTextureMapperImpl.cpp:

(Nicosia::BackingStoreTextureMapperImpl::flushUpdate):
(Nicosia::BackingStoreTextureMapperImpl::takeUpdate):

  • platform/graphics/nicosia/texmap/NicosiaContentLayerTextureMapperImpl.cpp:

(Nicosia::ContentLayerTextureMapperImpl::~ContentLayerTextureMapperImpl):
(Nicosia::ContentLayerTextureMapperImpl::invalidateClient):
(Nicosia::ContentLayerTextureMapperImpl::flushUpdate):
(Nicosia::ContentLayerTextureMapperImpl::swapBuffersIfNeeded):

  • platform/graphics/nicosia/texmap/NicosiaImageBackingTextureMapperImpl.cpp:

(Nicosia::ImageBackingTextureMapperImpl::flushUpdate):
(Nicosia::ImageBackingTextureMapperImpl::takeUpdate):

  • platform/graphics/texmap/TextureMapperGCGLPlatformLayer.cpp:

(WebCore::TextureMapperGCGLPlatformLayer::swapBuffersIfNeeded):

  • platform/graphics/win/MediaPlayerPrivateMediaFoundation.cpp:

(WebCore::MediaPlayerPrivateMediaFoundation::load):
(WebCore::MediaPlayerPrivateMediaFoundation::naturalSize const):
(WebCore::MediaPlayerPrivateMediaFoundation::addListener):
(WebCore::MediaPlayerPrivateMediaFoundation::removeListener):
(WebCore::MediaPlayerPrivateMediaFoundation::notifyDeleted):
(WebCore::MediaPlayerPrivateMediaFoundation::setNaturalSize):
(WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::Invoke):
(WebCore::MediaPlayerPrivateMediaFoundation::AsyncCallback::onMediaPlayerDeleted):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::OnClockStart):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::OnClockStop):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::OnClockPause):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::OnClockRestart):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::OnClockSetRate):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::ProcessMessage):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::GetCurrentMediaType):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::InitServicePointers):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::ReleaseServicePointers):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::SetVideoWindow):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::GetVideoWindow):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::SetVideoPosition):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::GetVideoPosition):
(WebCore::MediaPlayerPrivateMediaFoundation::CustomVideoPresenter::RepaintVideo):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoSamplePool::getSample):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoSamplePool::returnSample):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoSamplePool::areSamplesPending):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoSamplePool::initialize):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoSamplePool::clear):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoScheduler::stopScheduler):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoScheduler::scheduleSample):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoScheduler::processSamplesInQueue):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoScheduler::processSample):
(WebCore::MediaPlayerPrivateMediaFoundation::VideoScheduler::schedulerThreadProcPrivate):
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::setVideoWindow):
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::setDestinationRect):
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::createVideoSamples):
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::checkDeviceState):
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::presentSample):
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::paintCurrentFrame):
(WebCore::MediaPlayerPrivateMediaFoundation::Direct3DPresenter::createD3DDevice):

  • platform/image-decoders/ScalableImageDecoder.cpp:

(WebCore::ScalableImageDecoder::frameIsCompleteAtIndex const):
(WebCore::ScalableImageDecoder::frameHasAlphaAtIndex const):
(WebCore::ScalableImageDecoder::frameBytesAtIndex const):
(WebCore::ScalableImageDecoder::frameDurationAtIndex const):
(WebCore::ScalableImageDecoder::createFrameImageAtIndex):

  • platform/image-decoders/ScalableImageDecoder.h:
  • platform/ios/LegacyTileCache.mm:

(WebCore::LegacyTileCache::setTilesOpaque):
(WebCore::LegacyTileCache::doLayoutTiles):
(WebCore::LegacyTileCache::setCurrentScale):
(WebCore::LegacyTileCache::commitScaleChange):
(WebCore::LegacyTileCache::layoutTilesNow):
(WebCore::LegacyTileCache::layoutTilesNowForRect):
(WebCore::LegacyTileCache::removeAllNonVisibleTiles):
(WebCore::LegacyTileCache::removeAllTiles):
(WebCore::LegacyTileCache::removeForegroundTiles):
(WebCore::LegacyTileCache::setContentReplacementImage):
(WebCore::LegacyTileCache::contentReplacementImage const):
(WebCore::LegacyTileCache::tileCreationTimerFired):
(WebCore::LegacyTileCache::setNeedsDisplayInRect):
(WebCore::LegacyTileCache::updateTilingMode):
(WebCore::LegacyTileCache::setTilingMode):
(WebCore::LegacyTileCache::doPendingRepaints):
(WebCore::LegacyTileCache::flushSavedDisplayRects):
(WebCore::LegacyTileCache::prepareToDraw):

  • platform/ios/LegacyTileLayerPool.mm:

(WebCore::LegacyTileLayerPool::addLayer):
(WebCore::LegacyTileLayerPool::takeLayerWithSize):
(WebCore::LegacyTileLayerPool::setCapacity):
(WebCore::LegacyTileLayerPool::prune):
(WebCore::LegacyTileLayerPool::drain):

  • platform/ios/wak/WAKWindow.mm:

(-[WAKWindow setExposedScrollViewRect:]):
(-[WAKWindow exposedScrollViewRect]):

  • platform/ios/wak/WebCoreThread.mm:

(RunWebThread):
(StartWebThread):

  • platform/mediastream/gstreamer/RealtimeOutgoingAudioSourceLibWebRTC.cpp:

(WebCore::RealtimeOutgoingAudioSourceLibWebRTC::audioSamplesAvailable):
(WebCore::RealtimeOutgoingAudioSourceLibWebRTC::pullAudioData):

  • platform/network/cf/FormDataStreamCFNet.cpp:

(WebCore::openNextStream):
(WebCore::formFinalize):
(WebCore::formClose):

  • platform/network/curl/CurlRequest.cpp:

(WebCore::CurlRequest::setRequestPaused):
(WebCore::CurlRequest::setCallbackPaused):
(WebCore::CurlRequest::pausedStatusChanged):
(WebCore::CurlRequest::enableDownloadToFile):
(WebCore::CurlRequest::getDownloadedFilePath):
(WebCore::CurlRequest::writeDataToDownloadFileIfEnabled):
(WebCore::CurlRequest::closeDownloadFile):
(WebCore::CurlRequest::cleanupDownloadFile):

  • platform/network/curl/CurlSSLHandle.cpp:

(WebCore::CurlSSLHandle::allowAnyHTTPSCertificatesForHost):
(WebCore::CurlSSLHandle::canIgnoreAnyHTTPSCertificatesForHost const):
(WebCore::CurlSSLHandle::setClientCertificateInfo):
(WebCore::CurlSSLHandle::getSSLClientCertificate const):

  • platform/sql/SQLiteDatabase.cpp:

(WebCore::SQLiteDatabase::close):
(WebCore::SQLiteDatabase::maximumSize):
(WebCore::SQLiteDatabase::setMaximumSize):
(WebCore::SQLiteDatabase::pageSize):
(WebCore::SQLiteDatabase::freeSpaceSize):
(WebCore::SQLiteDatabase::totalSize):
(WebCore::SQLiteDatabase::runIncrementalVacuumCommand):
(WebCore::SQLiteDatabase::interrupt):
(WebCore::SQLiteDatabase::setAuthorizer):
(WebCore::constructAndPrepareStatement):

  • platform/sql/SQLiteStatement.cpp:

(WebCore::SQLiteStatement::step):

Source/WebKit:

  • NetworkProcess/IndexedDB/WebIDBServer.cpp:

(WebKit::m_closeCallback):
(WebKit::WebIDBServer::getOrigins):
(WebKit::WebIDBServer::closeAndDeleteDatabasesModifiedSince):
(WebKit::WebIDBServer::closeAndDeleteDatabasesForOrigins):
(WebKit::WebIDBServer::renameOrigin):
(WebKit::WebIDBServer::openDatabase):
(WebKit::WebIDBServer::deleteDatabase):
(WebKit::WebIDBServer::abortTransaction):
(WebKit::WebIDBServer::commitTransaction):
(WebKit::WebIDBServer::didFinishHandlingVersionChangeTransaction):
(WebKit::WebIDBServer::createObjectStore):
(WebKit::WebIDBServer::deleteObjectStore):
(WebKit::WebIDBServer::renameObjectStore):
(WebKit::WebIDBServer::clearObjectStore):
(WebKit::WebIDBServer::createIndex):
(WebKit::WebIDBServer::deleteIndex):
(WebKit::WebIDBServer::renameIndex):
(WebKit::WebIDBServer::putOrAdd):
(WebKit::WebIDBServer::getRecord):
(WebKit::WebIDBServer::getAllRecords):
(WebKit::WebIDBServer::getCount):
(WebKit::WebIDBServer::deleteRecord):
(WebKit::WebIDBServer::openCursor):
(WebKit::WebIDBServer::iterateCursor):
(WebKit::WebIDBServer::establishTransaction):
(WebKit::WebIDBServer::databaseConnectionPendingClose):
(WebKit::WebIDBServer::databaseConnectionClosed):
(WebKit::WebIDBServer::abortOpenAndUpgradeNeeded):
(WebKit::WebIDBServer::didFireVersionChangeEvent):
(WebKit::WebIDBServer::openDBRequestCancelled):
(WebKit::WebIDBServer::getAllDatabaseNamesAndVersions):
(WebKit::WebIDBServer::addConnection):
(WebKit::WebIDBServer::removeConnection):
(WebKit::WebIDBServer::close):

  • NetworkProcess/cache/CacheStorageEngine.cpp:

(WebKit::CacheStorage::Engine::writeSizeFile):
(WebKit::CacheStorage::Engine::readSizeFile):
(WebKit::CacheStorage::Engine::clearAllCachesFromDisk):
(WebKit::CacheStorage::Engine::deleteNonEmptyDirectoryOnBackgroundThread):

  • NetworkProcess/glib/DNSCache.cpp:

(WebKit::DNSCache::lookup):
(WebKit::DNSCache::update):
(WebKit::DNSCache::removeExpiredResponsesFired):
(WebKit::DNSCache::clear):

  • Shared/CoordinatedGraphics/threadedcompositor/CompositingRunLoop.cpp:

(WebKit::CompositingRunLoop::suspend):
(WebKit::CompositingRunLoop::resume):
(WebKit::CompositingRunLoop::scheduleUpdate):
(WebKit::CompositingRunLoop::stopUpdates):
(WebKit::CompositingRunLoop::updateTimerFired):

  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedCompositor.cpp:

(WebKit::m_displayRefreshMonitor):
(WebKit::ThreadedCompositor::setScaleFactor):
(WebKit::ThreadedCompositor::setScrollPosition):
(WebKit::ThreadedCompositor::setViewportSize):
(WebKit::ThreadedCompositor::renderLayerTree):
(WebKit::ThreadedCompositor::sceneUpdateFinished):
(WebKit::ThreadedCompositor::updateSceneState):

  • UIProcess/API/glib/IconDatabase.cpp:

(WebKit::IconDatabase::populatePageURLToIconURLMap):
(WebKit::IconDatabase::clearLoadedIconsTimerFired):
(WebKit::IconDatabase::checkIconURLAndSetPageURLIfNeeded):
(WebKit::IconDatabase::loadIconForPageURL):
(WebKit::IconDatabase::iconURLForPageURL):
(WebKit::IconDatabase::setIconForPageURL):
(WebKit::IconDatabase::clear):

Source/WebKitLegacy:

  • Storage/InProcessIDBServer.cpp:

(InProcessIDBServer::InProcessIDBServer):
(InProcessIDBServer::deleteDatabase):
(InProcessIDBServer::openDatabase):
(InProcessIDBServer::abortTransaction):
(InProcessIDBServer::commitTransaction):
(InProcessIDBServer::didFinishHandlingVersionChangeTransaction):
(InProcessIDBServer::createObjectStore):
(InProcessIDBServer::deleteObjectStore):
(InProcessIDBServer::renameObjectStore):
(InProcessIDBServer::clearObjectStore):
(InProcessIDBServer::createIndex):
(InProcessIDBServer::deleteIndex):
(InProcessIDBServer::renameIndex):
(InProcessIDBServer::putOrAdd):
(InProcessIDBServer::getRecord):
(InProcessIDBServer::getAllRecords):
(InProcessIDBServer::getCount):
(InProcessIDBServer::deleteRecord):
(InProcessIDBServer::openCursor):
(InProcessIDBServer::iterateCursor):
(InProcessIDBServer::establishTransaction):
(InProcessIDBServer::databaseConnectionPendingClose):
(InProcessIDBServer::databaseConnectionClosed):
(InProcessIDBServer::abortOpenAndUpgradeNeeded):
(InProcessIDBServer::didFireVersionChangeEvent):
(InProcessIDBServer::openDBRequestCancelled):
(InProcessIDBServer::getAllDatabaseNamesAndVersions):
(InProcessIDBServer::closeAndDeleteDatabasesModifiedSince):

  • Storage/StorageAreaSync.cpp:

(WebKit::StorageAreaSync::syncTimerFired):
(WebKit::StorageAreaSync::performSync):

  • Storage/StorageTracker.cpp:

(WebKit::StorageTracker::finishedImportingOriginIdentifiers):
(WebKit::StorageTracker::syncImportOriginIdentifiers):
(WebKit::StorageTracker::syncFileSystemAndTrackerDatabase):
(WebKit::StorageTracker::setOriginDetails):
(WebKit::StorageTracker::syncSetOriginDetails):
(WebKit::StorageTracker::origins):
(WebKit::StorageTracker::deleteAllOrigins):
(WebKit::StorageTracker::syncDeleteAllOrigins):
(WebKit::StorageTracker::deleteOrigin):
(WebKit::StorageTracker::syncDeleteOrigin):
(WebKit::StorageTracker::canDeleteOrigin):
(WebKit::StorageTracker::cancelDeletingOrigin):
(WebKit::StorageTracker::diskUsageForOrigin):

Source/WebKitLegacy/mac:

  • WebView/WebView.mm:

(-[WebView _synchronizeCustomFixedPositionLayoutRect]):
(-[WebView _setCustomFixedPositionLayoutRectInWebThread:synchronize:]):
(-[WebView _setCustomFixedPositionLayoutRect:]):
(-[WebView _fetchCustomFixedPositionLayoutRect:]):

Source/WebKitLegacy/win:

  • Plugins/PluginMainThreadScheduler.cpp:

(WebCore::PluginMainThreadScheduler::scheduleCall):
(WebCore::PluginMainThreadScheduler::registerPlugin):
(WebCore::PluginMainThreadScheduler::unregisterPlugin):
(WebCore::PluginMainThreadScheduler::dispatchCallsForPlugin):

Source/WTF:

  • benchmarks/LockSpeedTest.cpp:
  • wtf/AutomaticThread.cpp:

(WTF::AutomaticThread::~AutomaticThread):
(WTF::AutomaticThread::join):
(WTF::AutomaticThread::start):

  • wtf/AutomaticThread.h:
  • wtf/MetaAllocator.cpp:

(WTF::MetaAllocatorHandle::shrink):
(WTF::MetaAllocator::addFreshFreeSpace):
(WTF::MetaAllocator::debugFreeSpaceSize):

  • wtf/ParallelHelperPool.cpp:

(WTF::ParallelHelperClient::ParallelHelperClient):
(WTF::ParallelHelperClient::~ParallelHelperClient):
(WTF::ParallelHelperClient::setTask):
(WTF::ParallelHelperClient::finish):
(WTF::ParallelHelperClient::doSomeHelping):
(WTF::ParallelHelperClient::runTask):
(WTF::ParallelHelperPool::~ParallelHelperPool):
(WTF::ParallelHelperPool::ensureThreads):
(WTF::ParallelHelperPool::doSomeHelping):

  • wtf/Seconds.cpp:

(WTF::sleep):

  • wtf/TimeWithDynamicClockType.cpp:

(WTF::sleep):

  • wtf/WorkerPool.cpp:

(WTF::WorkerPool::WorkerPool):
(WTF::WorkerPool::~WorkerPool):
(WTF::WorkerPool::postTask):

  • wtf/posix/ThreadingPOSIX.cpp:

(WTF::Thread::suspend):
(WTF::Thread::resume):
(WTF::Thread::getRegisters):

  • wtf/win/DbgHelperWin.cpp:

(WTF::DbgHelper::SymFromAddress):

  • wtf/win/ThreadingWin.cpp:

(WTF::Thread::suspend):
(WTF::Thread::resume):
(WTF::Thread::getRegisters):

Tools:

  • TestWebKitAPI/Tests/WTF/WorkQueue.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WTF/glib/WorkQueueGLib.cpp:

(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebCore/AbortableTaskQueue.cpp:

(TestWebKitAPI::DeterministicScheduler::ThreadContext::waitMyTurn):
(TestWebKitAPI::DeterministicScheduler::ThreadContext::yieldToThread):

10:23 PM Changeset in webkit [277912] by Lauro Moura
  • 2 edits in trunk/WebDriverTests

[WebDriver] Gardening some GTK and WPE failures

Unreviewed test gardening.

9:34 PM Changeset in webkit [277911] by Chris Dumez
  • 20 edits in trunk

Stop using holdLock() in WebKit/WebKitLegacy/Tools as it is not compatible with Clang thread safety analysis
https://bugs.webkit.org/show_bug.cgi?id=226127

Reviewed by Alex Christensen.

Source/WebKit:

  • GPUProcess/webrtc/LibWebRTCCodecsProxy.mm:

(WebKit::LibWebRTCCodecsProxy::close):
(WebKit::LibWebRTCCodecsProxy::createH264Decoder):
(WebKit::LibWebRTCCodecsProxy::createH265Decoder):
(WebKit::LibWebRTCCodecsProxy::createVP9Decoder):
(WebKit::LibWebRTCCodecsProxy::releaseDecoder):
(WebKit::LibWebRTCCodecsProxy::createEncoder):
(WebKit::LibWebRTCCodecsProxy::releaseEncoder):
(WebKit::LibWebRTCCodecsProxy::allowsExitUnderMemoryPressure const):

  • Platform/IPC/Connection.cpp:

(IPC::Connection::SyncMessageState::enqueueMatchingMessages):
(IPC::Connection::SyncMessageState::processIncomingMessage):
(IPC::Connection::SyncMessageState::dispatchMessages):
(IPC::Connection::SyncMessageState::dispatchMessagesAndResetDidScheduleDispatchMessagesForConnection):

  • Shared/CoordinatedGraphics/threadedcompositor/ThreadedDisplayRefreshMonitor.cpp:

(WebKit::ThreadedDisplayRefreshMonitor::requestRefreshCallback):
(WebKit::ThreadedDisplayRefreshMonitor::requiresDisplayRefreshCallback):
(WebKit::ThreadedDisplayRefreshMonitor::invalidate):
(WebKit::ThreadedDisplayRefreshMonitor::displayRefreshCallback):

  • Shared/mac/MediaFormatReader/MediaSampleCursor.cpp:

(WebKit::MediaSampleCursor::copy):
(WebKit::MediaSampleCursor::getSampleMap const):

  • UIProcess/mac/WKPrintingView.mm:

(-[WKPrintingView _preparePDFDataForPrintingOnSecondaryThread]):
(prepareDataForPrintingOnSecondaryThread):

Source/WebKitLegacy/ios:

  • WebCoreSupport/WebFixedPositionContent.mm:

(-[WebFixedPositionContent scrollOrZoomChanged:]):
(-[WebFixedPositionContent overflowScrollPositionForLayer:changedTo:]):
(-[WebFixedPositionContent setViewportConstrainedLayers:stickyContainerMap:]):
(-[WebFixedPositionContent hasFixedOrStickyPositionLayers]):

Source/WebKitLegacy/win:

  • WebKitQuartzCoreAdditions/CAD3DRenderer.cpp:

(WKQCA::CAD3DRenderer::swapChain):
(WKQCA::CAD3DRenderer::renderAndPresent):
(WKQCA::CAD3DRenderer::renderToImage):

  • WebKitQuartzCoreAdditions/CAView.cpp:

(WKQCA::CAView::releaseAllD3DResources):
(WKQCA::CAView::CAView):
(WKQCA::CAView::~CAView):
(WKQCA::CAView::setLayer):
(WKQCA::CAView::update):
(WKQCA::CAView::drawToWindow):
(WKQCA::CAView::drawToImage):
(WKQCA::CAView::drawIntoDC):
(WKQCA::CAView::setShouldInvertColors):
(WKQCA::CAView::scheduleNextDraw):
(WKQCA::CAView::displayLinkReachedCAMediaTime):
(WKQCA::CAView::contextDidChange):
(WKQCA::CAView::updateSoon):
(WKQCA::CAView::updateViewsNow):
(WKQCA::CAView::d3dDevice9):

  • WebLocalizableStrings.cpp:

(findCachedString):
(cacheString):

Tools:

  • DumpRenderTree/JavaScriptThreading.cpp:

(runJavaScriptThread):
(startJavaScriptThreads):
(stopJavaScriptThreads):

  • Scripts/webkitpy/style/checkers/cpp.py:

(check_lock_guard):

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:

(WebKitStyleTest.test_lock_guard):

  • TestWebKitAPI/Tests/WTF/Condition.cpp:
  • TestWebKitAPI/Tests/WTF/ThreadGroup.cpp:

(TestWebKitAPI::testThreadGroup):
(TestWebKitAPI::TEST):

  • WebKitTestRunner/InjectedBundle/AccessibilityController.cpp:

(WTR::AXThread::dispatch):
(WTR::AXThread::dispatchFunctionsFromAXThread):

  • WebKitTestRunner/InjectedBundle/mac/AccessibilityControllerMac.mm:

(WTR::AXThread::initializeRunLoop):

9:24 PM Changeset in webkit [277910] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Fix locking issue for AudioDestinationCocoa::m_isPlaying
https://bugs.webkit.org/show_bug.cgi?id=226129

Reviewed by Jer Noble.

Fix locking issue for AudioDestinationCocoa::m_isPlaying. The AudioDestinationCocoa::isPlaying()
getter fails to lock. isPlaying() may get called from the main thread and the audio rendering
thread. Since we cannot grab a lock on the rendering thread, use std::atomic<bool> type for
m_isPlaying.

  • platform/audio/cocoa/AudioDestinationCocoa.cpp:

(WebCore::AudioDestinationCocoa::setIsPlaying):
(WebCore::AudioDestinationCocoa::renderOnRenderingTheadIfPlaying):

  • platform/audio/cocoa/AudioDestinationCocoa.h:
8:13 PM Changeset in webkit [277909] by Chris Dumez
  • 92 edits in trunk/Source/JavaScriptCore

Stop using holdLock() in JSC as it is not compatible with Clang thread safety analysis
https://bugs.webkit.org/show_bug.cgi?id=226116

Reviewed by Mark Lam.

Stop using holdLock() in JSC as it is not compatible with Clang thread safety analysis
(WTF::CheckedLock). Use the Locker constructor instead.

I'll eventually get rid of the holdLock() definition once I have managed to get rid of
all its usages.

  • API/JSVirtualMachine.mm:

(+[JSVMWrapperCache addWrapper:forJSContextGroupRef:]):
(+[JSVMWrapperCache wrapperForJSContextGroupRef:]):
(-[JSVirtualMachine addExternalRememberedObject:]):
(-[JSVirtualMachine addManagedReference:withOwner:]):
(-[JSVirtualMachine removeManagedReference:withOwner:]):
(scanExternalObjectGraph):
(scanExternalRememberedSet):

  • API/glib/JSCVirtualMachine.cpp:

(addWrapper):
(removeWrapper):

  • API/tests/ExecutionTimeLimitTest.cpp:

(testExecutionTimeLimit):

  • assembler/PerfLog.cpp:

(JSC::PerfLog::PerfLog):
(JSC::PerfLog::log):

  • bytecode/StructureStubInfo.cpp:

(JSC::StructureStubInfo::visitAggregateImpl):
(JSC::StructureStubInfo::visitWeakReferences):

  • bytecode/StructureStubInfo.h:

(JSC::StructureStubInfo::considerCaching):
(JSC::StructureStubInfo::clearBufferedStructures):

  • bytecode/UnlinkedCodeBlock.cpp:

(JSC::UnlinkedCodeBlock::UnlinkedCodeBlock):
(JSC::UnlinkedCodeBlock::visitChildrenImpl):

  • bytecode/UnlinkedCodeBlockGenerator.cpp:

(JSC::UnlinkedCodeBlockGenerator::finalize):

  • dfg/DFGAbstractInterpreterInlines.h:

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

  • heap/BlockDirectory.cpp:

(JSC::BlockDirectory::~BlockDirectory):
(JSC::BlockDirectory::removeBlock):
(JSC::BlockDirectory::stopAllocatingForGood):
(JSC::BlockDirectory::parallelNotEmptyBlockSource):

  • heap/CodeBlockSet.cpp:

(JSC::CodeBlockSet::add):
(JSC::CodeBlockSet::remove):

  • heap/CodeBlockSetInlines.h:

(JSC::CodeBlockSet::iterate):

  • heap/CompleteSubspace.cpp:

(JSC::CompleteSubspace::allocatorForSlow):

  • heap/Heap.cpp:

(JSC::Heap::lastChanceToFinalize):
(JSC::Heap::runNotRunningPhase):
(JSC::Heap::runEndPhase):
(JSC::Heap::finishRelinquishingConn):
(JSC::visitSamplingProfiler):
(JSC::Heap::setBonusVisitorTask):
(JSC::Heap::runTaskInParallel):

  • heap/HeapSnapshotBuilder.cpp:

(JSC::HeapSnapshotBuilder::buildSnapshot):
(JSC::HeapSnapshotBuilder::analyzeNode):
(JSC::HeapSnapshotBuilder::analyzeEdge):
(JSC::HeapSnapshotBuilder::analyzePropertyNameEdge):
(JSC::HeapSnapshotBuilder::analyzeVariableNameEdge):
(JSC::HeapSnapshotBuilder::analyzeIndexEdge):
(JSC::HeapSnapshotBuilder::setOpaqueRootReachabilityReasonForCell):

  • heap/IsoAlignedMemoryAllocator.cpp:

(JSC::IsoAlignedMemoryAllocator::tryAllocateAlignedMemory):
(JSC::IsoAlignedMemoryAllocator::freeAlignedMemory):

  • heap/IsoCellSet.cpp:

(JSC::IsoCellSet::parallelNotEmptyMarkedBlockSource):
(JSC::IsoCellSet::addSlow):
(JSC::IsoCellSet::didRemoveBlock):
(JSC::IsoCellSet::sweepToFreeList):

  • heap/IsoCellSetInlines.h:

(JSC::IsoCellSet::forEachMarkedCellInParallel):

  • heap/IsoSubspace.cpp:

(JSC::IsoSubspace::IsoSubspace):

  • heap/IsoSubspacePerVM.cpp:

(JSC::IsoSubspacePerVM::forVM):

  • heap/LocalAllocator.cpp:

(JSC::LocalAllocator::LocalAllocator):
(JSC::LocalAllocator::~LocalAllocator):

  • heap/MachineStackMarker.cpp:

(JSC::MachineThreads::tryCopyOtherThreadStacks):
(JSC::MachineThreads::gatherConservativeRoots):

  • heap/MarkedBlock.cpp:

(JSC::MarkedBlock::Handle::stopAllocating):
(JSC::MarkedBlock::Handle::resumeAllocating):
(JSC::MarkedBlock::aboutToMarkSlow):
(JSC::MarkedBlock::Handle::didConsumeFreeList):
(JSC::MarkedBlock::noteMarkedSlow):
(JSC::MarkedBlock::Handle::dumpState):

  • heap/MarkedBlockInlines.h:

(JSC::MarkedBlock::Handle::isLive):

  • heap/MarkingConstraint.cpp:

(JSC::MarkingConstraint::doParallelWork):

  • heap/MarkingConstraintSolver.cpp:

(JSC::MarkingConstraintSolver::addParallelTask):
(JSC::MarkingConstraintSolver::runExecutionThread):

  • heap/ParallelSourceAdapter.h:
  • heap/SlotVisitor.cpp:

(JSC::SlotVisitor::updateMutatorIsStopped):
(JSC::SlotVisitor::drain):
(JSC::SlotVisitor::performIncrementOfDraining):
(JSC::SlotVisitor::drainFromShared):
(JSC::SlotVisitor::drainInParallelPassively):
(JSC::SlotVisitor::waitForTermination):
(JSC::SlotVisitor::donateAll):
(JSC::SlotVisitor::didRace):

  • heap/Subspace.cpp:

(JSC::Subspace::parallelDirectorySource):

  • heap/SubspaceInlines.h:

(JSC::Subspace::forEachMarkedCellInParallel):

  • inspector/JSInjectedScriptHost.cpp:
  • jit/ExecutableAllocator.cpp:
  • jsc.cpp:

(Worker::Worker):
(Worker::~Worker):
(Worker::dequeue):
(Workers::broadcast):
(Workers::report):
(Workers::tryGetReport):
(Workers::getReport):
(JSC_DEFINE_HOST_FUNCTION):

  • runtime/DeferredWorkTimer.cpp:

(JSC::DeferredWorkTimer::doWork):

  • runtime/ErrorInstance.cpp:

(JSC::ErrorInstance::finishCreation):

  • runtime/EvalExecutable.cpp:

(JSC::EvalExecutable::visitChildrenImpl):

  • runtime/FileBasedFuzzerAgentBase.cpp:

(JSC::FileBasedFuzzerAgentBase::getPrediction):

  • runtime/FunctionExecutable.cpp:

(JSC::FunctionExecutable::visitChildrenImpl):

  • runtime/JSArray.cpp:

(JSC::JSArray::shiftCountWithArrayStorage):
(JSC::JSArray::unshiftCountWithArrayStorage):

  • runtime/JSArrayBufferView.cpp:

(JSC::JSArrayBufferView::detach):
(JSC::JSArrayBufferView::slowDownAndWasteMemory):

  • runtime/JSCell.h:
  • runtime/JSFinalizationRegistry.cpp:

(JSC::JSFinalizationRegistry::visitChildrenImpl):
(JSC::JSFinalizationRegistry::finalizeUnconditionally):
(JSC::JSFinalizationRegistry::takeDeadHoldingsValue):
(JSC::JSFinalizationRegistry::registerTarget):
(JSC::JSFinalizationRegistry::unregister):

  • runtime/JSGenericTypedArrayViewInlines.h:

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

  • runtime/JSGlobalObject.cpp:

(JSC::JSC_DEFINE_HOST_FUNCTION):

  • runtime/JSModuleNamespaceObject.cpp:

(JSC::JSModuleNamespaceObject::finishCreation):
(JSC::JSModuleNamespaceObject::visitChildrenImpl):

  • runtime/JSObject.cpp:

(JSC::JSObject::visitButterflyImpl):

  • runtime/JSRunLoopTimer.cpp:

(JSC::JSRunLoopTimer::Manager::timerDidFire):
(JSC::JSRunLoopTimer::Manager::registerVM):
(JSC::JSRunLoopTimer::Manager::unregisterVM):
(JSC::JSRunLoopTimer::Manager::scheduleTimer):
(JSC::JSRunLoopTimer::Manager::cancelTimer):
(JSC::JSRunLoopTimer::Manager::timeUntilFire):
(JSC::JSRunLoopTimer::timerDidFire):
(JSC::JSRunLoopTimer::setTimeUntilFire):
(JSC::JSRunLoopTimer::cancelTimer):
(JSC::JSRunLoopTimer::addTimerSetNotification):
(JSC::JSRunLoopTimer::removeTimerSetNotification):

  • runtime/JSSegmentedVariableObject.cpp:

(JSC::JSSegmentedVariableObject::findVariableIndex):
(JSC::JSSegmentedVariableObject::addVariables):
(JSC::JSSegmentedVariableObject::visitChildrenImpl):

  • runtime/ModuleProgramExecutable.cpp:

(JSC::ModuleProgramExecutable::visitChildrenImpl):

  • runtime/NarrowingNumberPredictionFuzzerAgent.cpp:

(JSC::NarrowingNumberPredictionFuzzerAgent::getPrediction):

  • runtime/ProgramExecutable.cpp:

(JSC::ProgramExecutable::visitChildrenImpl):

  • runtime/RandomizingFuzzerAgent.cpp:

(JSC::RandomizingFuzzerAgent::getPrediction):

  • runtime/RegExp.cpp:

(JSC::RegExp::compile):
(JSC::RegExp::matchConcurrently):
(JSC::RegExp::compileMatchOnly):
(JSC::RegExp::deleteCode):

  • runtime/SamplingProfiler.cpp:

(JSC::SamplingProfiler::takeSample):
(JSC::SamplingProfiler::stackTracesAsJSON):
(JSC::SamplingProfiler::reportTopFunctions):
(JSC::SamplingProfiler::reportTopBytecodes):

  • runtime/ScriptExecutable.cpp:

(JSC::ScriptExecutable::createTemplateObject):

  • runtime/SparseArrayValueMap.cpp:

(JSC::SparseArrayValueMap::add):
(JSC::SparseArrayValueMap::remove):
(JSC::SparseArrayValueMap::getConcurrently):
(JSC::SparseArrayValueMap::visitChildrenImpl):

  • runtime/Structure.cpp:

(JSC::Structure::changePrototypeTransition):
(JSC::Structure::toDictionaryTransition):
(JSC::Structure::nonPropertyTransitionSlow):
(JSC::Structure::setBrandTransition):

  • runtime/StructureCache.cpp:

(JSC::StructureCache::createEmptyStructure):
(JSC::StructureCache::emptyObjectStructureConcurrently):

  • runtime/VM.cpp:

(JSC::waitForVMDestruction):
(JSC::VM::~VM):
(JSC::VM::gatherScratchBufferRoots):
(JSC::VM::scratchBufferForSize):
(JSC::VM::clearScratchBuffers):
(JSC::VM::addLoopHintExecutionCounter):
(JSC::VM::getLoopHintExecutionCounter):
(JSC::VM::removeLoopHintExecutionCounter):

  • runtime/VMTraps.cpp:

(JSC::VMTraps::tryInstallTrapBreakpoints):
(JSC::VMTraps::invalidateCodeBlocksOnStack):
(JSC::VMTraps::willDestroyVM):
(JSC::VMTraps::fireTrap):
(JSC::VMTraps::handleTraps):
(JSC::VMTraps::takeTopPriorityTrap):

  • runtime/WeakMapImpl.cpp:

(JSC::WeakMapImpl<BucketType>::visitOutputConstraints):

  • runtime/WeakMapImpl.h:

(JSC::WeakMapImpl::finishCreation):

  • runtime/WeakMapImplInlines.h:

(JSC::WeakMapImpl<WeakMapBucket>::rehash):

  • runtime/WideningNumberPredictionFuzzerAgent.cpp:

(JSC::WideningNumberPredictionFuzzerAgent::getPrediction):

  • tools/CompilerTimingScope.cpp:
  • tools/FunctionOverrides.cpp:

(JSC::FunctionOverrides::FunctionOverrides):
(JSC::FunctionOverrides::reinstallOverrides):
(JSC::FunctionOverrides::initializeOverrideFor):

  • tools/Integrity.cpp:

(JSC::Integrity::Random::reloadAndCheckShouldAuditSlow):

  • tools/VMInspector.cpp:

(JSC::VMInspector::add):
(JSC::VMInspector::remove):
(JSC::VMInspector::codeBlockForMachinePC):

  • wasm/WasmBBQPlan.cpp:

(JSC::Wasm::BBQPlan::work):
(JSC::Wasm::BBQPlan::compileFunction):

  • wasm/WasmCalleeRegistry.h:

(JSC::Wasm::CalleeRegistry::registerCallee):
(JSC::Wasm::CalleeRegistry::unregisterCallee):

  • wasm/WasmCodeBlock.cpp:

(JSC::Wasm::CodeBlock::CodeBlock):
(JSC::Wasm::CodeBlock::waitUntilFinished):
(JSC::Wasm::CodeBlock::compileAsync):

  • wasm/WasmContext.cpp:

(JSC::Wasm::Context::scratchBufferForSize):

  • wasm/WasmEntryPlan.cpp:

(JSC::Wasm::EntryPlan::parseAndValidateModule):
(JSC::Wasm::EntryPlan::prepare):
(JSC::Wasm::EntryPlan::compileFunctions):

  • wasm/WasmEntryPlan.h:

(JSC::Wasm::EntryPlan::tryReserveCapacity):

  • wasm/WasmFaultSignalHandler.cpp:

(JSC::Wasm::trapHandler):

  • wasm/WasmInstance.cpp:

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

  • wasm/WasmLLIntPlan.cpp:

(JSC::Wasm::LLIntPlan::compileFunction):
(JSC::Wasm::LLIntPlan::completeInStreaming):
(JSC::Wasm::LLIntPlan::didCompileFunctionInStreaming):
(JSC::Wasm::LLIntPlan::didFailInStreaming):

  • wasm/WasmMachineThreads.cpp:

(JSC::Wasm::resetInstructionCacheOnAllThreads):

  • wasm/WasmMemory.cpp:

(JSC::Wasm::Memory::growShared):

  • wasm/WasmModule.cpp:

(JSC::Wasm::Module::getOrCreateCodeBlock):

  • wasm/WasmOMGForOSREntryPlan.cpp:

(JSC::Wasm::OMGForOSREntryPlan::work):

  • wasm/WasmOMGPlan.cpp:

(JSC::Wasm::OMGPlan::work):

  • wasm/WasmOperations.cpp:

(JSC::Wasm::triggerOMGReplacementCompile):
(JSC::Wasm::JSC_DEFINE_JIT_OPERATION):

  • wasm/WasmSignatureInlines.h:

(JSC::Wasm::SignatureInformation::get):

  • wasm/WasmSlowPaths.cpp:

(JSC::LLInt::jitCompileAndSetHeuristics):
(JSC::LLInt::WASM_SLOW_PATH_DECL):

  • wasm/WasmStreamingCompiler.cpp:

(JSC::Wasm::StreamingCompiler::didCompileFunction):
(JSC::Wasm::StreamingCompiler::finalize):
(JSC::Wasm::StreamingCompiler::fail):
(JSC::Wasm::StreamingCompiler::cancel):

  • wasm/WasmStreamingPlan.cpp:

(JSC::Wasm::StreamingPlan::work):

  • wasm/WasmTable.cpp:

(JSC::Wasm::Table::grow):
(JSC::Wasm::Table::visitAggregateImpl):

  • wasm/WasmThunks.cpp:

(JSC::Wasm::Thunks::stub):
(JSC::Wasm::Thunks::existingStub):

  • wasm/WasmWorklist.cpp:
  • wasm/js/JSWebAssemblyInstance.cpp:

(JSC::JSWebAssemblyInstance::visitChildrenImpl):

8:04 PM Changeset in webkit [277908] by Chris Dumez
  • 63 edits in trunk/Source/WebCore

Stop using holdLock() in WebCore as it is not compatible with Clang thread safety analysis
https://bugs.webkit.org/show_bug.cgi?id=226119

Reviewed by Sam Weinig.

Stop using holdLock() in WebCore as it is not compatible with Clang thread safety analysis
(WTF::CheckedLock). Use the Locker constructor directly instead.

This is a step towards getting rid of holdLock() entirely.

  • Modules/speech/SpeechRecognitionCaptureSourceImpl.cpp:

(WebCore::SpeechRecognitionCaptureSourceImpl::audioSamplesAvailable):

  • Modules/webaudio/AudioBuffer.cpp:

(WebCore::AudioBuffer::releaseMemory):
(WebCore::AudioBuffer::memoryCost const):

  • Modules/webaudio/AudioBufferSourceNode.cpp:

(WebCore::AudioBufferSourceNode::setBuffer):
(WebCore::AudioBufferSourceNode::startPlaying):

  • Modules/webaudio/AudioWorkletNode.cpp:

(WebCore::AudioWorkletNode::~AudioWorkletNode):
(WebCore::AudioWorkletNode::initializeAudioParameters):
(WebCore::AudioWorkletNode::setProcessor):

  • Modules/webaudio/ConvolverNode.cpp:

(WebCore::ConvolverNode::setBuffer):

  • Modules/webaudio/MediaElementAudioSourceNode.cpp:

(WebCore::MediaElementAudioSourceNode::setFormat):

  • Modules/webaudio/MediaStreamAudioSourceNode.cpp:

(WebCore::MediaStreamAudioSourceNode::setFormat):

  • Modules/webaudio/OscillatorNode.cpp:

(WebCore::OscillatorNode::setPeriodicWave):

  • Modules/webaudio/PannerNode.cpp:

(WebCore::PannerNode::setPanningModel):
(WebCore::PannerNode::setPosition):
(WebCore::PannerNode::setOrientation):
(WebCore::PannerNode::setDistanceModel):
(WebCore::PannerNode::setRefDistance):
(WebCore::PannerNode::setMaxDistance):
(WebCore::PannerNode::setRolloffFactor):
(WebCore::PannerNode::setConeOuterGain):
(WebCore::PannerNode::setConeOuterAngle):
(WebCore::PannerNode::setConeInnerAngle):

  • Modules/webaudio/ScriptProcessorNode.cpp:

(WebCore::ScriptProcessorNode::uninitialize):
(WebCore::ScriptProcessorNode::process):

  • Modules/webaudio/WaveShaperProcessor.cpp:

(WebCore::WaveShaperProcessor::setCurve):
(WebCore::WaveShaperProcessor::setOversample):

  • Modules/webdatabase/Database.cpp:

(WebCore::Database::performOpenAndVerify):

  • Modules/webdatabase/DatabaseManager.cpp:

(WebCore::DatabaseManager::addProposedDatabase):
(WebCore::DatabaseManager::removeProposedDatabase):
(WebCore::DatabaseManager::fullPathForDatabase):
(WebCore::DatabaseManager::detailsForNameAndOrigin):

  • Modules/webdatabase/DatabaseTracker.cpp:

(WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
(WebCore::DatabaseTracker::notifyDatabasesChanged):

  • bindings/js/JSDOMGlobalObject.cpp:

(WebCore::JSDOMGlobalObject::visitChildrenImpl):

  • bindings/js/JSPaintWorkletGlobalScopeCustom.cpp:

(WebCore::JSPaintWorkletGlobalScope::visitAdditionalChildren):

  • css/CSSPaintImageValue.cpp:

(WebCore::CSSPaintImageValue::image):

  • css/DOMCSSPaintWorklet.cpp:

(WebCore::PaintWorklet::addModule):

  • dom/EventListenerMap.cpp:

(WebCore::EventListenerMap::clear):
(WebCore::EventListenerMap::replace):
(WebCore::EventListenerMap::add):
(WebCore::EventListenerMap::remove):
(WebCore::EventListenerMap::removeFirstEventListenerCreatedFromMarkup):

  • dom/EventTarget.cpp:

(WebCore::EventTarget::visitJSEventListeners):

  • dom/Node.cpp:

(WebCore::Node::ensureEventTargetData):
(WebCore::Node::clearEventTargetData):

  • html/CanvasBase.cpp:

(WebCore::CanvasBase::memoryCost const):
(WebCore::CanvasBase::externalMemoryCost const):
(WebCore::CanvasBase::setImageBuffer const):

  • html/HTMLCollection.cpp:

(WebCore::HTMLCollection::invalidateNamedElementCache const):

  • html/HTMLCollection.h:

(WebCore::HTMLCollection::memoryCost const):
(WebCore::HTMLCollection::setNamedItemCache const):

  • html/OffscreenCanvas.cpp:

(WebCore::OffscreenCanvas::pushBufferToPlaceholder):
(WebCore::OffscreenCanvas::commitToPlaceholderCanvas):

  • html/canvas/OESVertexArrayObject.cpp:

(WebCore::OESVertexArrayObject::deleteVertexArrayOES):
(WebCore::OESVertexArrayObject::bindVertexArrayOES):

  • html/canvas/WebGL2RenderingContext.cpp:

(WebCore::WebGL2RenderingContext::bindFramebuffer):
(WebCore::WebGL2RenderingContext::deleteFramebuffer):
(WebCore::WebGL2RenderingContext::vertexAttribIPointer):
(WebCore::WebGL2RenderingContext::deleteQuery):
(WebCore::WebGL2RenderingContext::beginQuery):
(WebCore::WebGL2RenderingContext::endQuery):
(WebCore::WebGL2RenderingContext::deleteSampler):
(WebCore::WebGL2RenderingContext::bindSampler):
(WebCore::WebGL2RenderingContext::deleteSync):
(WebCore::WebGL2RenderingContext::deleteTransformFeedback):
(WebCore::WebGL2RenderingContext::bindTransformFeedback):
(WebCore::WebGL2RenderingContext::beginTransformFeedback):
(WebCore::WebGL2RenderingContext::setIndexedBufferBinding):
(WebCore::WebGL2RenderingContext::deleteVertexArray):
(WebCore::WebGL2RenderingContext::bindVertexArray):
(WebCore::WebGL2RenderingContext::addMembersToOpaqueRoots):

  • html/canvas/WebGLContextGroup.cpp:

(WebCore::WebGLContextGroup::detachAndRemoveAllObjects):

  • html/canvas/WebGLFramebuffer.cpp:

(WebCore::WebGLFramebuffer::initializeAttachments):
(WebCore::WebGLFramebuffer::setAttachmentInternal):

  • html/canvas/WebGLObject.cpp:

(WebCore::WebGLObject::runDestructor):

  • html/canvas/WebGLRenderingContextBase.cpp:

(WebCore::WebGLRenderingContextBase::attachShader):
(WebCore::WebGLRenderingContextBase::bindBuffer):
(WebCore::WebGLRenderingContextBase::bindFramebuffer):
(WebCore::WebGLRenderingContextBase::bindRenderbuffer):
(WebCore::WebGLRenderingContextBase::bindTexture):
(WebCore::WebGLRenderingContextBase::deleteBuffer):
(WebCore::WebGLRenderingContextBase::deleteFramebuffer):
(WebCore::WebGLRenderingContextBase::deleteProgram):
(WebCore::WebGLRenderingContextBase::deleteRenderbuffer):
(WebCore::WebGLRenderingContextBase::deleteShader):
(WebCore::WebGLRenderingContextBase::deleteTexture):
(WebCore::WebGLRenderingContextBase::detachShader):
(WebCore::WebGLRenderingContextBase::useProgram):
(WebCore::WebGLRenderingContextBase::vertexAttribPointer):
(WebCore::WebGLRenderingContextBase::detachAndRemoveAllObjects):
(WebCore::WebGLRenderingContextBase::addMembersToOpaqueRoots):

  • platform/audio/ReverbConvolver.cpp:

(WebCore::ReverbConvolver::~ReverbConvolver):

  • platform/audio/cocoa/AudioDestinationCocoa.cpp:

(WebCore::AudioDestinationCocoa::start):
(WebCore::AudioDestinationCocoa::stop):
(WebCore::AudioDestinationCocoa::setIsPlaying):

  • platform/audio/gstreamer/AudioSourceProviderGStreamer.cpp:

(WebCore::AudioSourceProviderGStreamer::handleSample):
(WebCore::AudioSourceProviderGStreamer::clearAdapters):

  • platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:

(webkitWebAudioSourceSetDispatchToRenderThreadFunction):

  • platform/graphics/DisplayRefreshMonitor.cpp:

(WebCore::DisplayRefreshMonitor::requestRefreshCallback):
(WebCore::DisplayRefreshMonitor::displayLinkFired):
(WebCore::DisplayRefreshMonitor::displayDidRefresh):

  • platform/graphics/FontCache.cpp:

(WebCore::FontCache::cachedFontPlatformData):
(WebCore::FontCache::fontForPlatformData):
(WebCore::FontCache::purgeInactiveFontData):
(WebCore::FontCache::inactiveFontCount):

  • platform/graphics/avfoundation/AudioSourceProviderAVFObjC.mm:

(WebCore::AudioSourceProviderAVFObjC::destroyMixIfNeeded):
(WebCore::AudioSourceProviderAVFObjC::createMixIfNeeded):
(WebCore::AudioSourceProviderAVFObjC::prepareCallback):
(WebCore::AudioSourceProviderAVFObjC::unprepareCallback):
(WebCore::AudioSourceProviderAVFObjC::processCallback):

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

(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::destroyLayers):
(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::rootLayerBoundsDidChange):

  • platform/graphics/cg/ColorCG.cpp:

(WebCore::cachedCGColor):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::hasFirstVideoSampleReachedSink const):
(WebCore::MediaPlayerPrivateGStreamer::pushTextureToCompositor):
(WebCore::MediaPlayerPrivateGStreamer::triggerRepaint):
(WebCore::MediaPlayerPrivateGStreamer::flushCurrentBuffer):
(WebCore::MediaPlayerPrivateGStreamer::paint):
(WebCore::MediaPlayerPrivateGStreamer::copyVideoTextureToPlatformTexture):
(WebCore::MediaPlayerPrivateGStreamer::waitForCDMAttachment):

  • platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:

(webKitWebSrcConstructed):
(webKitWebSrcGetProperty):
(webKitWebSrcSetContext):
(webKitWebSrcCreate):
(webKitWebSrcMakeRequest):
(webKitWebSrcStop):
(webKitWebSrcGetSize):
(webKitWebSrcIsSeekable):
(webKitWebSrcDoSeek):
(webKitWebSrcQuery):
(webKitWebSrcUnLock):
(webKitWebSrcUnLockStop):
(webKitWebSrcSetMediaPlayer):
(webKitSrcPassedCORSAccessCheck):
(CachedResourceStreamingClient::responseReceived):
(CachedResourceStreamingClient::dataReceived):
(CachedResourceStreamingClient::accessControlCheckFailed):
(CachedResourceStreamingClient::loadFailed):
(CachedResourceStreamingClient::loadFinished):
(webKitSrcWouldTaintOrigin):

  • platform/graphics/gstreamer/eme/WebKitCommonEncryptionDecryptorGStreamer.cpp:

(isCDMProxyAvailable):
(attachCDMProxy):

  • platform/graphics/gstreamer/mse/MediaSourceTrackGStreamer.cpp:

(WebCore::MediaSourceTrackGStreamer::isReadyForMoreSamples):
(WebCore::MediaSourceTrackGStreamer::notifyWhenReadyForMoreSamples):
(WebCore::MediaSourceTrackGStreamer::enqueueObject):
(WebCore::MediaSourceTrackGStreamer::clearQueue):

  • platform/graphics/gstreamer/mse/WebKitMediaSourceGStreamer.cpp:

(webKitMediaSrcActivateMode):
(webKitMediaSrcPadLinked):
(webKitMediaSrcLoop):
(webKitMediaSrcStreamFlush):

  • platform/graphics/mac/ColorMac.mm:

(WebCore::nsColor):

  • platform/graphics/nicosia/NicosiaImageBufferPipe.cpp:

(Nicosia::NicosiaImageBufferPipeSource::handle):

  • platform/ios/wak/WebCoreThread.mm:

(HandleDelegateSource):
(WebThreadAdoptAndRelease):
(WebCoreObjCDeallocOnWebThreadImpl):
(WebCoreObjCDeallocWithWebThreadLockImpl):
(HandleWebThreadReleaseSource):

  • platform/ios/wak/WebCoreThreadRun.cpp:
  • platform/mac/PublicSuffixMac.mm:

(WebCore::topPrivatelyControlledDomain):

  • platform/mediarecorder/MediaRecorderPrivateMock.cpp:

(WebCore::MediaRecorderPrivateMock::videoSampleAvailable):
(WebCore::MediaRecorderPrivateMock::audioSamplesAvailable):
(WebCore::MediaRecorderPrivateMock::fetchData):

  • platform/mediarecorder/cocoa/MediaRecorderPrivateWriterCocoa.mm:

(WebCore::MediaRecorderPrivateWriter::appendData):
(WebCore::MediaRecorderPrivateWriter::takeData):

  • platform/mediastream/RealtimeMediaSource.cpp:

(WebCore::RealtimeMediaSource::addAudioSampleObserver):
(WebCore::RealtimeMediaSource::removeAudioSampleObserver):
(WebCore::RealtimeMediaSource::addVideoSampleObserver):
(WebCore::RealtimeMediaSource::removeVideoSampleObserver):
(WebCore::RealtimeMediaSource::videoSampleAvailable):
(WebCore::RealtimeMediaSource::audioSamplesAvailable):

  • platform/mediastream/RealtimeOutgoingAudioSource.cpp:

(WebCore::RealtimeOutgoingAudioSource::~RealtimeOutgoingAudioSource):
(WebCore::RealtimeOutgoingAudioSource::AddSink):
(WebCore::RealtimeOutgoingAudioSource::RemoveSink):
(WebCore::RealtimeOutgoingAudioSource::sendAudioFrames):

  • platform/mediastream/RealtimeOutgoingVideoSource.cpp:

(WebCore::RealtimeOutgoingVideoSource::~RealtimeOutgoingVideoSource):
(WebCore::RealtimeOutgoingVideoSource::AddOrUpdateSink):
(WebCore::RealtimeOutgoingVideoSource::RemoveSink):
(WebCore::RealtimeOutgoingVideoSource::sendFrame):

  • platform/mediastream/mac/BaseAudioSharedUnit.cpp:

(WebCore::BaseAudioSharedUnit::addClient):
(WebCore::BaseAudioSharedUnit::removeClient):
(WebCore::BaseAudioSharedUnit::forEachClient const):
(WebCore::BaseAudioSharedUnit::clearClients):
(WebCore::BaseAudioSharedUnit::audioSamplesAvailable):

  • platform/mediastream/mac/WebAudioSourceProviderCocoa.mm:

(WebCore::WebAudioSourceProviderCocoa::prepare):

  • platform/network/cf/LoaderRunLoopCF.cpp:

(WebCore::loaderRunLoop):

  • platform/network/curl/CurlRequest.cpp:

(WebCore::CurlRequest::cancel):
(WebCore::CurlRequest::isCancelled):
(WebCore::CurlRequest::isCompletedOrCancelled):
(WebCore::CurlRequest::didCompleteTransfer):

  • platform/network/curl/CurlRequestScheduler.cpp:

(WebCore::CurlRequestScheduler::callOnWorkerThread):
(WebCore::CurlRequestScheduler::startThreadIfNeeded):
(WebCore::CurlRequestScheduler::stopThreadIfNoMoreJobRunning):
(WebCore::CurlRequestScheduler::stopThread):
(WebCore::CurlRequestScheduler::executeTasks):
(WebCore::CurlRequestScheduler::workerThread):
(WebCore::CurlRequestScheduler::startTransfer):
(WebCore::CurlRequestScheduler::finalizeTransfer):

  • platform/network/curl/CurlStreamScheduler.cpp:

(WebCore::CurlStreamScheduler::callOnWorkerThread):
(WebCore::CurlStreamScheduler::startThreadIfNeeded):
(WebCore::CurlStreamScheduler::stopThreadIfNoMoreJobRunning):
(WebCore::CurlStreamScheduler::executeTasks):

  • style/StyleBuilder.cpp:

(WebCore::Style::Builder::applyProperty):

  • workers/WorkerOrWorkletThread.cpp:

(WebCore::WorkerOrWorkletThread::workerOrWorkletThread):
(WebCore::WorkerOrWorkletThread::start):

  • worklets/PaintWorkletGlobalScope.cpp:

(WebCore::PaintWorkletGlobalScope::registerPaint):

  • worklets/PaintWorkletGlobalScope.h:
7:49 PM Changeset in webkit [277907] by Brent Fulgham
  • 9 edits in trunk/Source/WebKit

[Cocoa] Expand sandbox with missing sysctl-read handles for core CPU and cache features
https://bugs.webkit.org/show_bug.cgi?id=226126
<rdar://problem/78218756>

Reviewed by Per Arne Vollan.

Update our sandbox profiles to permit read access to a set of CPU and cache features that have been requested by
our sandbox and system framework teams. These have been judged to be safe to expose to our processes, and will
allow frameworks to make optimal use of the system WebKit is running on.

  • GPUProcess/mac/com.apple.WebKit.GPUProcess.sb.in:
  • NetworkProcess/mac/com.apple.WebKit.NetworkProcess.sb.in:
  • Resources/SandboxProfiles/ios/com.apple.WebKit.GPU.sb:
  • Resources/SandboxProfiles/ios/com.apple.WebKit.Networking.sb:
  • Resources/SandboxProfiles/ios/com.apple.WebKit.WebAuthn.sb:
  • Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
  • WebAuthnProcess/mac/com.apple.WebKit.WebAuthnProcess.sb.in:
  • WebProcess/com.apple.WebProcess.sb.in:
7:23 PM Changeset in webkit [277906] by weinig@apple.com
  • 14 edits in trunk/Source/WebKit

Make CGColorSpaceRef argument coding match other CF objects and use CGColorSpaceCreateWithPropertyList for fallback
https://bugs.webkit.org/show_bug.cgi?id=226112

Reviewed by Darin Adler.

This is a precursor to some color space type unification. This change:

  • Modernizes CF arugment coders to use ArgumentCoder specialization. It also means we now support encoding CF types both as plain types and RetainPtr<> types, with decoding being kept only supporing RetainPtr<>s, as decoding into non-smart pointer is not very useful.
  • Move CGColorSpaceRef coding to ArgumentCodersCF and use CGColorSpaceCopyPropertyList and CGColorSpaceCreateWithPropertyList as the fallback coding (if there is no name), matching what other libraries on macOS and iOS do.
  • Switch ColorSpaceData to be a struct wrapping an Optional<RetainPtr<CGColorSpaceRef>> and use the new shared coding. This will be replaced entirely in subsequent changes so I didn't want to change this too much now.
  • NetworkProcess/NetworkProcessCreationParameters.cpp:

(WebKit::NetworkProcessCreationParameters::encode const):
(WebKit::NetworkProcessCreationParameters::decode):

  • NetworkProcess/NetworkSessionCreationParameters.cpp:

(WebKit::NetworkSessionCreationParameters::encode const):
(WebKit::NetworkSessionCreationParameters::decode):

  • Shared/Cocoa/ArgumentCodersCocoa.mm:

(IPC::encodeDataInternal):
(IPC::decodeDataInternal):
(IPC::encodeDateInternal):
(IPC::decodeDateInternal):
(IPC::encodeNumberInternal):
(IPC::decodeNumberInternal):
(IPC::encodeSecureCodingInternal):
(IPC::decodeSecureCodingInternal):
(IPC::encodeStringInternal):
(IPC::decodeStringInternal):
(IPC::encodeURLInternal):
(IPC::decodeURLInternal):

  • Shared/Cocoa/WebCoreArgumentCodersCocoa.mm:

(IPC::ArgumentCoder<Ref<Font>>::encodePlatformData):
(IPC::ArgumentCoder<Ref<Font>>::decodePlatformData):

  • Shared/FontInfo.cpp:

(WebKit::FontInfo::encode const):
(WebKit::FontInfo::decode):

  • Shared/Plugins/PluginProcessCreationParameters.cpp:

(WebKit::PluginProcessCreationParameters::encode const):
(WebKit::PluginProcessCreationParameters::decode):

  • Shared/WebProcessCreationParameters.cpp:

(WebKit::WebProcessCreationParameters::encode const):
(WebKit::WebProcessCreationParameters::decode):

  • Shared/cf/ArgumentCodersCF.cpp:

(IPC::typeFromCFTypeRef):
(IPC::ArgumentCoder<CFTypeRef>::encode):
(IPC::ArgumentCoder<RetainPtr<CFTypeRef>>::decode):
(IPC::ArgumentCoder<CFArrayRef>::encode):
(IPC::ArgumentCoder<RetainPtr<CFArrayRef>>::decode):
(IPC::ArgumentCoder<CFBooleanRef>::encode):
(IPC::ArgumentCoder<RetainPtr<CFBooleanRef>>::decode):
(IPC::ArgumentCoder<CFDataRef>::encode):
(IPC::ArgumentCoder<RetainPtr<CFDataRef>>::decode):
(IPC::ArgumentCoder<CFDateRef>::encode):
(IPC::ArgumentCoder<RetainPtr<CFDateRef>>::decode):
(IPC::ArgumentCoder<CFDictionaryRef>::encode):
(IPC::ArgumentCoder<RetainPtr<CFDictionaryRef>>::decode):
(IPC::ArgumentCoder<CFNumberRef>::encode):
(IPC::ArgumentCoder<RetainPtr<CFNumberRef>>::decode):
(IPC::ArgumentCoder<CFStringRef>::encode):
(IPC::ArgumentCoder<RetainPtr<CFStringRef>>::decode):
(IPC::ArgumentCoder<CFURLRef>::encode):
(IPC::ArgumentCoder<RetainPtr<CFURLRef>>::decode):
(IPC::ArgumentCoder<CGColorSpaceRef>::encode):
(IPC::ArgumentCoder<RetainPtr<CGColorSpaceRef>>::decode):
(IPC::ArgumentCoder<SecCertificateRef>::encode):
(IPC::ArgumentCoder<RetainPtr<SecCertificateRef>>::decode):
(IPC::ArgumentCoder<SecKeychainItemRef>::encode):
(IPC::ArgumentCoder<RetainPtr<SecKeychainItemRef>>::decode):
(IPC::ArgumentCoder<SecAccessControlRef>::encode):
(IPC::ArgumentCoder<RetainPtr<SecAccessControlRef>>::decode):
(IPC::ArgumentCoder<SecTrustRef>::encode):
(IPC::ArgumentCoder<RetainPtr<SecTrustRef>>::decode):
(IPC::encode): Deleted.
(IPC::decode): Deleted.

  • Shared/cf/ArgumentCodersCF.h:

(IPC::CFRetainPtrArgumentCoder::encode):

  • Shared/mac/ColorSpaceData.mm:

(WebKit::ColorSpaceData::encode const):
(WebKit::ColorSpaceData::decode):
(): Deleted.

  • Shared/mac/SecItemRequestData.cpp:

(WebKit::SecItemRequestData::encode const):
(WebKit::SecItemRequestData::decode):

  • Shared/mac/SecItemResponseData.cpp:

(WebKit::SecItemResponseData::encode const):
(WebKit::SecItemResponseData::decode):

  • Shared/mac/WebCoreArgumentCodersMac.mm:

(IPC::ArgumentCoder<WebCore::CertificateInfo>::encode):
(IPC::ArgumentCoder<WebCore::CertificateInfo>::decode):
(IPC::encodeNSError):
(IPC::decodeNSError):
(IPC::ArgumentCoder<WebCore::ContentFilterUnblockHandler>::encode):
(IPC::ArgumentCoder<WebCore::ContentFilterUnblockHandler>::decode):

7:07 PM Changeset in webkit [277905] by weinig@apple.com
  • 2 edits in trunk/Source/WebCore

All Netflix playback fails after r277740
https://bugs.webkit.org/show_bug.cgi?id=226120
<rdar://problem/78333782>

Reviewed by Eric Carlson.

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

(WebCore::CDMInstanceSessionFairPlayStreamingAVFObjC::updateLicense):
Add missing !.

6:53 PM Changeset in webkit [277904] by Chris Dumez
  • 23 edits in trunk/Source

Use CheckedCondition in more places
https://bugs.webkit.org/show_bug.cgi?id=226113

Reviewed by Darin Adler.

Use CheckedCondition in more places to benefit from Clang Thread Safety
Analysis.

Source/WebCore:

  • Modules/webdatabase/DatabaseTask.cpp:

(WebCore::DatabaseTaskSynchronizer::waitForTaskCompletion):
(WebCore::DatabaseTaskSynchronizer::taskCompleted):

  • Modules/webdatabase/DatabaseTask.h:

(WebCore::DatabaseTaskSynchronizer::WTF_GUARDED_BY_LOCK):

  • platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:

(webKitWebAudioSrcRenderAndPushFrames):
(webKitWebAudioSrcRenderIteration):
(webKitWebAudioSrcChangeState):

  • platform/graphics/gstreamer/ImageDecoderGStreamer.cpp:

(WebCore::ImageDecoderGStreamer::setHasEOS):
(WebCore::ImageDecoderGStreamer::notifySample):
(WebCore::ImageDecoderGStreamer::InnerDecoder::handleMessage):
(WebCore::ImageDecoderGStreamer::InnerDecoder::preparePipeline):
(WebCore::ImageDecoderGStreamer::pushEncodedData):

  • platform/graphics/gstreamer/ImageDecoderGStreamer.h:
  • platform/graphics/gstreamer/MainThreadNotifier.h:
  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:

(WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
(WebCore::MediaPlayerPrivateGStreamer::pushTextureToCompositor):
(WebCore::MediaPlayerPrivateGStreamer::repaint):
(WebCore::MediaPlayerPrivateGStreamer::triggerRepaint):
(WebCore::MediaPlayerPrivateGStreamer::cancelRepaint):
(WebCore::MediaPlayerPrivateGStreamer::pushNextHolePunchBuffer):
(WebCore::MediaPlayerPrivateGStreamer::waitForCDMAttachment):
(WebCore::MediaPlayerPrivateGStreamer::cdmInstanceAttached):

  • platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:

(WebCore::MediaPlayerPrivateGStreamer::WTF_GUARDED_BY_LOCK):

  • platform/graphics/holepunch/MediaPlayerPrivateHolePunch.cpp:

(WebCore::MediaPlayerPrivateHolePunch::pushNextHolePunchBuffer):

  • platform/graphics/nicosia/NicosiaImageBufferPipe.cpp:

(Nicosia::NicosiaImageBufferPipeSource::handle):

  • platform/graphics/nicosia/texmap/NicosiaGCGLLayer.cpp:

(Nicosia::GCGLLayer::swapBuffersIfNeeded):

  • platform/graphics/texmap/TextureMapperPlatformLayerProxy.cpp:

(WebCore::TextureMapperPlatformLayerProxy::~TextureMapperPlatformLayerProxy):
(WebCore::TextureMapperPlatformLayerProxy::activateOnCompositingThread):
(WebCore::TextureMapperPlatformLayerProxy::invalidate):
(WebCore::TextureMapperPlatformLayerProxy::releaseUnusedBuffersTimerFired):
(WebCore::TextureMapperPlatformLayerProxy::swapBuffer):
(WebCore::TextureMapperPlatformLayerProxy::dropCurrentBufferWhilePreservingTexture):
(WebCore::TextureMapperPlatformLayerProxy::scheduleUpdateOnCompositorThread):
(WebCore::TextureMapperPlatformLayerProxy::compositorThreadUpdateTimerFired):

  • platform/graphics/texmap/TextureMapperPlatformLayerProxy.h:

(WebCore::TextureMapperPlatformLayerProxy::WTF_RETURNS_LOCK):
(WebCore::TextureMapperPlatformLayerProxy::WTF_GUARDED_BY_LOCK):

Source/WTF:

  • wtf/RunLoop.h:
  • wtf/SynchronizedFixedQueue.h:
  • wtf/WTFSemaphore.h:
  • wtf/WorkQueue.cpp:

(WTF::WorkQueue::concurrentApply):

  • wtf/generic/RunLoopGeneric.cpp:

(WTF::RunLoop::~RunLoop):
(WTF::RunLoop::populateTasks):
(WTF::RunLoop::runImpl):
(WTF::RunLoop::stop):
(WTF::RunLoop::wakeUpWithLock):
(WTF::RunLoop::wakeUp):
(WTF::RunLoop::schedule):
(WTF::RunLoop::scheduleAndWakeUpWithLock):
(WTF::RunLoop::TimerBase::~TimerBase):
(WTF::RunLoop::TimerBase::start):
(WTF::RunLoop::TimerBase::stop):
(WTF::RunLoop::TimerBase::isActive const):
(WTF::RunLoop::TimerBase::secondsUntilFire const):

  • wtf/win/RunLoopWin.cpp:

(WTF::RunLoop::TimerBase::timerFired):
(WTF::RunLoop::TimerBase::start):
(WTF::RunLoop::TimerBase::stop):
(WTF::RunLoop::TimerBase::isActive const):
(WTF::RunLoop::TimerBase::secondsUntilFire const):

6:33 PM Changeset in webkit [277903] by Wenson Hsieh
  • 12 edits
    2 adds in trunk/Source

[macOS] Adopt QLItem in WKImageExtractionPreviewController
https://bugs.webkit.org/show_bug.cgi?id=226114
rdar://76657718

Reviewed by Tim Horton.

Source/WebCore/PAL:

Add a PAL softlinking header for QuickLookUI on macOS.

  • PAL.xcodeproj/project.pbxproj:
  • pal/PlatformMac.cmake:
  • pal/mac/QuickLookUISoftLink.h: Added.
  • pal/mac/QuickLookUISoftLink.mm: Added.
  • pal/spi/mac/QuickLookMacSPI.h:

Add staging declarations for some new QuickLook SPI; these method declarations should be moved into the non-
internal-SDK section in the (near) future, once it is safe to do so.

Source/WebKit:

Adopt QLItem in WKImageExtractionPreviewController, and use it in place of WKImageExtractionPreviewItem.
This allows us to vend image previews based solely on image data, rather than a file on disk.

  • UIProcess/mac/WKImageExtractionPreviewController.h:
  • UIProcess/mac/WKImageExtractionPreviewController.mm:

(-[WKImageExtractionPreviewController initWithPage:imageData:title:imageURL:]):
(-[WKImageExtractionPreviewController provideDataForItem:]):
(-[WKImageExtractionPreviewController previewPanel:previewItemAtIndex:]):
(-[WKImageExtractionPreviewItem initWithFileURL:title:imageURL:pageURL:]): Deleted.
(-[WKImageExtractionPreviewItem dealloc]): Deleted.
(-[WKImageExtractionPreviewItem previewItemURL]): Deleted.
(-[WKImageExtractionPreviewItem previewItemTitle]): Deleted.
(-[WKImageExtractionPreviewItem previewOptions]): Deleted.
(-[WKImageExtractionPreviewController initWithPage:fileURL:title:imageURL:]): Deleted.

  • UIProcess/mac/WKImmediateActionController.mm:

(-[WKImmediateActionController willDestroyView:]):

Adopt the new QuickLookUI softlinking header in PAL.

Source/WebKitLegacy/mac:

Adopt the new QuickLookUI softlinking header in PAL.

  • WebView/WebImmediateActionController.mm:

(-[WebImmediateActionController webViewClosed]):

Source/WTF:

Introduce SOFT_LINK_FRAMEWORK_IN_UMBRELLA_FOR_SOURCE_WITH_EXPORT, so that we can soft link frameworks that are
embedded inside other umbrella frameworks in PAL.

  • wtf/cocoa/SoftLinking.h:
5:46 PM Changeset in webkit [277902] by mark.lam@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Remove the unnecessary use of CompileOpStrictEqType.
https://bugs.webkit.org/show_bug.cgi?id=226121

Reviewed by Saam Barati and Robin Morisset.

We're already emitting template code. Might as well make the relevant condition
checks a build time check on the opcode type the template is specializing on
instead of a runtime check on a passed in CompileOpStrictEqType.

  • jit/JIT.h:
  • jit/JITOpcodes.cpp:

(JSC::JIT::compileOpStrictEq):
(JSC::JIT::emit_op_stricteq):
(JSC::JIT::emit_op_nstricteq):
(JSC::JIT::compileOpStrictEqJump):
(JSC::JIT::emit_op_jstricteq):
(JSC::JIT::emit_op_jnstricteq):

  • jit/JITOpcodes32_64.cpp:

(JSC::JIT::compileOpStrictEq):
(JSC::JIT::emit_op_stricteq):
(JSC::JIT::emit_op_nstricteq):
(JSC::JIT::compileOpStrictEqJump):
(JSC::JIT::emit_op_jstricteq):
(JSC::JIT::emit_op_jnstricteq):

5:13 PM Changeset in webkit [277901] by Dewei Zhu
  • 2 edits in trunk/Websites/perf.webkit.org

Fix a bug that incorrect timestamp is reported for Git repositories.
https://bugs.webkit.org/show_bug.cgi?id=225987

Reviewed by Ryosuke Niwa.

'datetime.fromtimestamp' will use the current timezone.
However, '/api/report-commits' will interprete it as a timestamp string from UTC.
In order to keep the consistency, we should always use 'datetime.utcfromtimestamp'.

  • tools/sync-commits.py: Use 'datetime.utcfromtimestamp' instead of 'datetime.fromtimestamp'.

(GitRepository._revision_from_tokens):

5:11 PM Changeset in webkit [277900] by Chris Dumez
  • 23 edits in trunk/Source/WTF

Stop using holdLock() in WTF as it is not compatible with Clang thread safety analysis
https://bugs.webkit.org/show_bug.cgi?id=226117

Reviewed by Darin Adler.

Stop using holdLock() in WTF as it is not compatible with Clang thread safety analysis
(WTF::CheckedLock) and use the Locker constructor instead.

This is a step towards getting rid of holdLock() completely.

  • benchmarks/ConditionSpeedTest.cpp:
  • wtf/ConcurrentPtrHashSet.cpp:

(WTF::ConcurrentPtrHashSet::deleteOldTables):
(WTF::ConcurrentPtrHashSet::clear):
(WTF::ConcurrentPtrHashSet::containsImplSlow const):
(WTF::ConcurrentPtrHashSet::sizeSlow const):
(WTF::ConcurrentPtrHashSet::resizeIfNecessary):

  • wtf/CountingLock.h:
  • wtf/HashTable.cpp:

(WTF::HashTableStats::recordCollisionAtCount):
(WTF::HashTableStats::dumpStats):

  • wtf/HashTable.h:

(WTF::invalidateIterators):
(WTF::addIterator):
(WTF::removeIterator):

  • wtf/LockedPrintStream.cpp:

(WTF::LockedPrintStream::vprintf):
(WTF::LockedPrintStream::flush):

  • wtf/MetaAllocator.cpp:

(WTF::MetaAllocatorHandle::~MetaAllocatorHandle):

  • wtf/MetaAllocator.h:

(WTF::MetaAllocator::allocate):
(WTF::MetaAllocator::currentStatistics):

  • wtf/ReadWriteLock.h:
  • wtf/StackShotProfiler.h:

(WTF::StackShotProfiler::profile):
(WTF::StackShotProfiler::run):

  • wtf/StackStats.cpp:

(WTF::StackStats::CheckPoint::CheckPoint):
(WTF::StackStats::CheckPoint::~CheckPoint):
(WTF::StackStats::probe):
(WTF::StackStats::LayoutCheckPoint::LayoutCheckPoint):
(WTF::StackStats::LayoutCheckPoint::~LayoutCheckPoint):

  • wtf/ThreadGroup.cpp:

(WTF::ThreadGroup::~ThreadGroup):
(WTF::ThreadGroup::add):

  • wtf/ThreadMessage.cpp:

(WTF::sendMessageScoped):

  • wtf/Threading.cpp:

(WTF::Thread::didExit):
(WTF::Thread::addToThreadGroup):
(WTF::Thread::removeFromThreadGroup):
(WTF::Thread::numberOfThreadGroups):

  • wtf/TimingScope.cpp:
  • wtf/WTFConfig.cpp:

(WTF::Config::permanentlyFreeze):

  • wtf/WTFSemaphore.h:
  • wtf/posix/ThreadingPOSIX.cpp:

(WTF::Thread::changePriority):
(WTF::Thread::waitForCompletion):
(WTF::Thread::detach):
(WTF::Thread::signal):
(WTF::Thread::establishPlatformSpecificHandle):

  • wtf/threads/BinarySemaphore.cpp:

(WTF::BinarySemaphore::signal):
(WTF::BinarySemaphore::waitUntil):

  • wtf/threads/Signals.cpp:

(WTF::SignalHandlers::add):
(WTF::registerThreadForMachExceptionHandling):
(WTF::activateSignalHandlersFor):

  • wtf/win/LanguageWin.cpp:

(WTF::platformLanguage):

  • wtf/win/ThreadingWin.cpp:

(WTF::Thread::changePriority):
(WTF::Thread::waitForCompletion):
(WTF::Thread::detach):
(WTF::Thread::establishPlatformSpecificHandle):

5:07 PM Changeset in webkit [277899] by Russell Epstein
  • 8 edits in branches/safari-612.1.15.0-branch/Source

Versioning.

WebKit-7612.1.15.0.5

4:36 PM Changeset in webkit [277898] by msaboff@apple.com
  • 13 edits in trunk/Source/bmalloc

[bmalloc] Rollout r276266 because WebKit processes are spending much more time in madvise
https://bugs.webkit.org/show_bug.cgi?id=226122

Unreviewed rollout.

Rolling out r276266 to do some automated testing. At the same time, we'll work on changing the madvise() decommitting to be more precise.

  • bmalloc/BPlatform.h:
  • bmalloc/Heap.cpp:

(bmalloc::Heap::scavenge):
(bmalloc::Heap::scavengeToHighWatermark):
(bmalloc::Heap::allocateSmallChunk):
(bmalloc::Heap::allocateSmallPage):
(bmalloc::Heap::allocateLarge):

  • bmalloc/Heap.h:
  • bmalloc/IsoDirectory.h:
  • bmalloc/IsoDirectoryInlines.h:

(bmalloc::passedNumPages>::takeFirstEligible):
(bmalloc::passedNumPages>::scavenge):
(bmalloc::passedNumPages>::scavengeToHighWatermark):

  • bmalloc/IsoHeapImpl.h:
  • bmalloc/IsoHeapImplInlines.h:

(bmalloc::IsoHeapImpl<Config>::scavengeToHighWatermark):

  • bmalloc/LargeMap.cpp:

(bmalloc::LargeMap::add):

  • bmalloc/LargeRange.h:

(bmalloc::LargeRange::LargeRange):
(bmalloc::merge):

  • bmalloc/Scavenger.cpp:

(bmalloc::Scavenger::Scavenger):
(bmalloc::Scavenger::timeSinceLastPartialScavenge):
(bmalloc::Scavenger::scavenge):
(bmalloc::Scavenger::partialScavenge):
(bmalloc::Scavenger::threadRunLoop):

  • bmalloc/Scavenger.h:
  • bmalloc/SmallPage.h:
4:09 PM Changeset in webkit [277897] by Russell Epstein
  • 1 copy in tags/Safari-612.1.15.0.4

Tag Safari-612.1.15.0.4.

4:04 PM Changeset in webkit [277896] by Diego Pino Garcia
  • 4 edits in trunk

Set CanvasImageSmoothing.imageSmoothingQuality value to 'low' as default
https://bugs.webkit.org/show_bug.cgi?id=225952

Reviewed by Sam Weinig.

Source/WebCore:

Covered by existing tests:

  • inspector/canvas/recording-2d-frameCount.html
  • inspector/canvas/recording-2d-full.html
  • inspector/canvas/recording-2d-memoryLimit.html
  • inspector/canvas/recording-2d-saves.html
  • inspector/canvas/recording-html-2d.html
  • html/canvas/CanvasRenderingContext2DBase.cpp:

LayoutTests:

Defined by spec:
https://html.spec.whatwg.org/multipage/canvas.html#canvasimagesmoothing

  • platform/gtk/TestExpectations:
3:46 PM Changeset in webkit [277895] by Ruben Turcios
  • 1 copy in tags/Safari-612.1.15.1.8

Tag Safari-612.1.15.1.8.

3:33 PM Changeset in webkit [277894] by Brent Fulgham
  • 3 edits in trunk/Source/WebKit

[Cocoa] Expand IOKit method filters to cover items encountered during testing
https://bugs.webkit.org/show_bug.cgi?id=226106
<rdar://problem/78327511>

Reviewed by Per Arne Vollan.

Allow additional IOKit methods based on testing results and the method values we hit during normal operations.

  • Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:
  • WebProcess/com.apple.WebProcess.sb.in:
3:17 PM Changeset in webkit [277893] by Chris Dumez
  • 6 edits in trunk/Source/WebCore

Adopt CheckedLock in ScrollingTree and fix threading bug
https://bugs.webkit.org/show_bug.cgi?id=226109

Reviewed by Darin Adler.

Adopt CheckedLock in ScrollingTree and fix threading bug found by Clang Thread Safety
Analysis. In particular, ThreadedScrollingTree::willStartRenderingUpdate() was failing
to grab the lock before updating m_state. m_state definitely get modified from several
threads so synchronization is important.

  • page/scrolling/ScrollingTree.cpp:

(WebCore::ScrollingTree::handleWheelEvent):
(WebCore::ScrollingTree::traverseScrollingTree):
(WebCore::ScrollingTree::commitTreeState):
(WebCore::ScrollingTree::applyLayerPositions):
(WebCore::ScrollingTree::applyLayerPositionsInternal):
(WebCore::ScrollingTree::scrollBySimulatingWheelEventForTesting):

  • page/scrolling/ScrollingTree.h:

(WebCore::ScrollingTree::WTF_RETURNS_LOCK):
(WebCore::ScrollingTree::WTF_REQUIRES_LOCK):

  • page/scrolling/ThreadedScrollingTree.cpp:

(WebCore::ThreadedScrollingTree::ThreadedScrollingTree):
(WebCore::ThreadedScrollingTree::handleWheelEventAfterMainThread):
(WebCore::ThreadedScrollingTree::wheelEventWasProcessedByMainThread):
(WebCore::ThreadedScrollingTree::willSendEventToMainThread):
(WebCore::ThreadedScrollingTree::waitForEventToBeProcessedByMainThread):
(WebCore::ThreadedScrollingTree::invalidate):
(WebCore::ThreadedScrollingTree::willStartRenderingUpdate):
(WebCore::ThreadedScrollingTree::waitForRenderingUpdateCompletionOrTimeout):
(WebCore::ThreadedScrollingTree::didCompleteRenderingUpdate):
(WebCore::ThreadedScrollingTree::scheduleDelayedRenderingUpdateDetectionTimer):
(WebCore::ThreadedScrollingTree::delayedRenderingUpdateDetectionTimerFired):
(WebCore::ThreadedScrollingTree::displayDidRefreshOnScrollingThread):

  • page/scrolling/ThreadedScrollingTree.h:

(WebCore::ThreadedScrollingTree::WTF_RETURNS_LOCK):
(WebCore::ThreadedScrollingTree::WTF_GUARDED_BY_LOCK):

  • page/scrolling/mac/ScrollingTreeScrollingNodeDelegateMac.mm:

(WebCore::ScrollingTreeScrollingNodeDelegateMac::createTimer):

3:14 PM Changeset in webkit [277892] by Chris Dumez
  • 2 edits in trunk/Source/WebKit

Adopt CheckedLock in RemoteImageBufferProxy
https://bugs.webkit.org/show_bug.cgi?id=226098

Reviewed by Tim Horton.

Adopt CheckedLock in RemoteImageBufferProxy to benefit from Clang Thread Safety Analysis.
I had to use WTF_IGNORES_THREAD_SAFETY_ANALYSIS on one of the getter where we weren't
locking. My understanding is that the code is currently safe without the lock in this
case and I added a comment and assertions to clarify that.

  • WebProcess/GPU/graphics/RemoteImageBufferProxy.h:

(WebKit::RemoteImageBufferProxy::waitForDidFlushOnSecondaryThread):

2:39 PM Changeset in webkit [277891] by Ruben Turcios
  • 8 edits in branches/safari-612.1.15.1-branch/Source

Versioning.

WebKit-7612.1.15.1.8

2:29 PM Changeset in webkit [277890] by Chris Dumez
  • 3 edits in trunk/Source/WebKitLegacy

Adopt CheckedLock in StorageAreaSync
https://bugs.webkit.org/show_bug.cgi?id=226099

Reviewed by Sam Weinig.

Adopt CheckedLock in StorageAreaSync to benefit from Clang Thread Safety Analysis.

  • Storage/StorageAreaSync.cpp:

(WebKit::StorageAreaSync::markImported):
(WebKit::StorageAreaSync::blockUntilImportComplete):

  • Storage/StorageAreaSync.h:
2:28 PM Changeset in webkit [277889] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Adopt CheckedLock in AudioMediaStreamTrackRendererUnit
https://bugs.webkit.org/show_bug.cgi?id=226095

Reviewed by Eric Carlson.

Adopt CheckedLock in AudioMediaStreamTrackRendererUnit to benefit from Clang Thread Safety
Analysis. Also rename variables for clarity and fixes a bug where we failed to grab the
lock before checking m_shouldUpdateRenderSources on the render thread (even though the
variable gets updated on the main thread).

  • platform/mediastream/cocoa/AudioMediaStreamTrackRendererUnit.cpp:

(WebCore::AudioMediaStreamTrackRendererUnit::addSource):
(WebCore::AudioMediaStreamTrackRendererUnit::removeSource):
(WebCore::AudioMediaStreamTrackRendererUnit::updateRenderSourcesIfNecessary):
(WebCore::AudioMediaStreamTrackRendererUnit::render):

  • platform/mediastream/cocoa/AudioMediaStreamTrackRendererUnit.h:

(WebCore::AudioMediaStreamTrackRendererUnit::WTF_GUARDED_BY_LOCK):
(): Deleted.

2:19 PM Changeset in webkit [277888] by Chris Dumez
  • 2 edits in trunk/Source/WebKit

Adopt CheckedLock in NetworkCache::Storage::TraverseOperation
https://bugs.webkit.org/show_bug.cgi?id=226101

Reviewed by Darin Adler.

Adopt CheckedLock in NetworkCache::Storage::TraverseOperation to benefit from Clang
Thread Safety Analysis.

  • NetworkProcess/cache/NetworkCacheStorage.cpp:

(WebKit::NetworkCache::Storage::TraverseOperation::WTF_GUARDED_BY_LOCK):
(WebKit::NetworkCache::Storage::traverse):

2:15 PM Changeset in webkit [277887] by Chris Dumez
  • 3 edits in trunk/Source/WebCore

Adopt CheckedLock / CheckedCondition in CDMProxy
https://bugs.webkit.org/show_bug.cgi?id=226103

Reviewed by Darin Adler.

Adopt CheckedLock / CheckedCondition in CDMProxy to benefit from Clang Thread Safety
Analysis.

  • platform/encryptedmedia/CDMProxy.cpp:

(WebCore::CDMProxy::updateKeyStore):
(WebCore::CDMProxy::keyHandle const):
(WebCore::CDMProxy::tryWaitForKeyHandle const):
(WebCore::CDMProxy::keyAvailable const):

  • platform/encryptedmedia/CDMProxy.h:
2:12 PM Changeset in webkit [277886] by Peng Liu
  • 2 edits in trunk/Source/WebCore

Video player enters a bad state after trying to enter picture-in-picture on YouTube.com videos
https://bugs.webkit.org/show_bug.cgi?id=226042

Reviewed by Daniel Bates.

The quirk shouldDisableEndFullscreenEventWhenEnteringPictureInPictureFromFull was
always true. This patch fixes that.

  • page/Quirks.cpp:

(WebCore::Quirks::shouldDisableEndFullscreenEventWhenEnteringPictureInPictureFromFullscreenQuirk const):

2:04 PM Changeset in webkit [277885] by Chris Dumez
  • 3 edits in trunk/Source/WebKit

Adopt CheckedLock in MediaFormatReader and fix threading bug
https://bugs.webkit.org/show_bug.cgi?id=226100

Reviewed by Darin Adler.

Adopt CheckedLock in MediaFormatReader and fix threading bug found by Clang Thread Safety
Analysis. In particular, parseByteSource() was failing to grab the lock before updating
m_parseTracksStatus in one of its branches.

  • Shared/mac/MediaFormatReader/MediaFormatReader.cpp:

(WebKit::MediaFormatReader::parseByteSource):
(WebKit::MediaFormatReader::didParseTracks):
(WebKit::MediaFormatReader::didProvideMediaData):
(WebKit::MediaFormatReader::finishParsing):
(WebKit::MediaFormatReader::copyProperty):
(WebKit::MediaFormatReader::copyTrackArray):

  • Shared/mac/MediaFormatReader/MediaFormatReader.h:
1:58 PM Changeset in webkit [277884] by aakash_jain@apple.com
  • 5 edits in trunk/Tools

Run layout tests in stress mode for 10 iterations on regular EWS layout-test queues
https://bugs.webkit.org/show_bug.cgi?id=226097

Reviewed by Jonathan Bedard.

  • CISupport/ews-build/factories.py:
  • CISupport/ews-build/factories_unittest.py:
  • CISupport/ews-build/steps.py:

(AnalyzePatch.getResultSummary):
(FindModifiedLayoutTests.init):
(FindModifiedLayoutTests.start):
(RunWebKitTestsInStressMode):
(RunWebKitTestsInStressMode.init):
(RunWebKitTestsInStressMode.setLayoutTestCommand):
(RunWebKitTestsInStressMode.doStepIf):

  • CISupport/ews-build/steps_unittest.py:
1:48 PM Changeset in webkit [277883] by Russell Epstein
  • 1 copy in tags/Safari-611.3.5

Tag Safari-611.3.5.

1:21 PM Changeset in webkit [277882] by mark.lam@apple.com
  • 4 edits in trunk/Source/JavaScriptCore

Introducing JITThunks::preinitializeCTIThunks().
https://bugs.webkit.org/show_bug.cgi?id=226105

Reviewed by Geoffrey Garen.

We're basically renaming JITThunks::preinitializeExtraCTIThunks() to
JITThunks::preinitializeCTIThunks() and making it not conditional on
#if ENABLE(EXTRA_CTI_THUNKS). Some thunks need to be initialized independent of
#if ENABLE(EXTRA_CTI_THUNKS).

  • jit/JITThunks.cpp:

(JSC::JITThunks::preinitializeCTIThunks):
(JSC::JITThunks::preinitializeExtraCTIThunks): Deleted.

  • jit/JITThunks.h:
  • runtime/VM.cpp:

(JSC::VM::VM):

1:20 PM Changeset in webkit [277881] by Chris Dumez
  • 5 edits in trunk/Source

[Cocoa] Unable to upload files that are stored in the cloud (without a local copy)
https://bugs.webkit.org/show_bug.cgi?id=226090
<rdar://77775887>

Reviewed by Darin Adler.

Source/WebKit:

Allow the network process to load / read dataless files stored in the cloud by allowing
the process to materialize such files. I initially only allowed the AsyncFileStream
thread to materialize the dataless files and this was enough to make the file upload
use cases work. However, I noticed that drag and dropping such file in the Safari URL
bar would fail loading, which I think is bad user experience. As a result, I have
decided to allow the materializing at network process level.

I have verified manually that I can now upload such dataless files via either file
picker or drag and drop (used https://blueimp.github.io/jQuery-File-Upload/). I have
also verified that drag and dropping such a file in the Safari URL bar successfuly
loads that file.

  • NetworkProcess/cocoa/NetworkProcessCocoa.mm:

(WebKit::NetworkProcess::platformInitializeNetworkProcessCocoa):

Source/WTF:

Add FileSystem API to allow/disallow the materializing of dataless files stored
in the cloud, at process or thread level.

  • wtf/FileSystem.h:
  • wtf/cocoa/FileSystemCocoa.mm:

(WTF::FileSystemImpl::toIOPolicyScope):
(WTF::FileSystemImpl::setAllowsMaterializingDatalessFiles):
(WTF::FileSystemImpl::allowsMaterializingDatalessFiles):

1:19 PM Changeset in webkit [277880] by Chris Dumez
  • 52 edits in trunk/Source

Replace more static Locks with CheckedLocks in WTF / WebCore
https://bugs.webkit.org/show_bug.cgi?id=226040

Reviewed by Darin Adler.

Replace more static Locks with CheckedLocks so that we can benefit from Clang Thread Safety Analysis.

Source/WebCore:

  • Modules/indexeddb/server/IDBSerializationContext.cpp:

(WebCore::IDBServer::IDBSerializationContext::getOrCreateForCurrentThread):
(WebCore::IDBServer::IDBSerializationContext::~IDBSerializationContext):

  • Modules/mediastream/RTCDataChannel.cpp:

(WebCore::WTF_REQUIRES_LOCK):
(WebCore::RTCDataChannel::detach):
(WebCore::RTCDataChannel::removeFromDataChannelLocalMapIfNeeded):
(WebCore::RTCDataChannel::handlerFromIdentifier):

  • Modules/webdatabase/Database.cpp:

(WebCore::WTF_REQUIRES_LOCK):
(WebCore::Database::Database):
(WebCore::Database::performOpenAndVerify):
(WebCore::Database::closeDatabase):
(WebCore::Database::getCachedVersion const):
(WebCore::Database::setCachedVersion):

  • Modules/webgpu/WebGPUDevice.cpp:

(WebCore::WebGPUDevice::instancesLock):
(WebCore::WebGPUDevice::~WebGPUDevice):

  • Modules/webgpu/WebGPUDevice.h:
  • Modules/webgpu/WebGPUPipeline.cpp:

(WebCore::WebGPUPipeline::instancesLock):
(WebCore::WebGPUPipeline::WebGPUPipeline):
(WebCore::WebGPUPipeline::~WebGPUPipeline):

  • Modules/webgpu/WebGPUPipeline.h:
  • Modules/websockets/WebSocket.cpp:

(WebCore::WebSocket::WebSocket):
(WebCore::WebSocket::~WebSocket):
(WebCore::WebSocket::allActiveWebSocketsLock):

  • Modules/websockets/WebSocket.h:
  • bridge/objc/WebScriptObject.mm:

(WebCore::getJSWrapper):
(WebCore::addJSWrapper):
(WebCore::removeJSWrapper):
(WebCore::removeJSWrapperIfRetainCountOne):

  • crypto/CryptoAlgorithmRegistry.cpp:

(WebCore::CryptoAlgorithmRegistry::singleton):
(WebCore::CryptoAlgorithmRegistry::identifier):
(WebCore::CryptoAlgorithmRegistry::name):
(WebCore::CryptoAlgorithmRegistry::create):
(WebCore::CryptoAlgorithmRegistry::registerAlgorithm):

  • crypto/CryptoAlgorithmRegistry.h:
  • dom/MessagePort.cpp:

(WebCore::MessagePort::deref const):
(WebCore::MessagePort::isExistingMessagePortLocallyReachable):
(WebCore::MessagePort::notifyMessageAvailable):
(WebCore::MessagePort::MessagePort):

  • dom/ScriptExecutionContext.cpp:

(WebCore::ScriptExecutionContext::contextIdentifier const):
(WebCore::ScriptExecutionContext::removeFromContextsMap):
(WebCore::ScriptExecutionContext::~ScriptExecutionContext):
(WebCore::ScriptExecutionContext::postTaskTo):

  • html/canvas/CanvasRenderingContext.cpp:

(WebCore::CanvasRenderingContext::instancesLock):
(WebCore::CanvasRenderingContext::CanvasRenderingContext):
(WebCore::CanvasRenderingContext::~CanvasRenderingContext):

  • html/canvas/CanvasRenderingContext.h:
  • html/canvas/WebGLProgram.cpp:

(WebCore::WebGLProgram::instancesLock):
(WebCore::WebGLProgram::WebGLProgram):
(WebCore::WebGLProgram::~WebGLProgram):

  • html/canvas/WebGLProgram.h:
  • html/canvas/WebGLRenderingContextBase.cpp:

(WebCore::WebGLRenderingContextBase::~WebGLRenderingContextBase):

  • inspector/InspectorCanvas.cpp:

(WebCore::InspectorCanvas::canvasElement const):
(WebCore:: const):

  • inspector/agents/InspectorCanvasAgent.cpp:

(WebCore::InspectorCanvasAgent::enable):

  • inspector/agents/InspectorNetworkAgent.cpp:

(WebCore::InspectorNetworkAgent::enable):
(WebCore::InspectorNetworkAgent::webSocketForRequestId):

  • inspector/agents/InspectorNetworkAgent.h:
  • inspector/agents/page/PageNetworkAgent.cpp:
  • inspector/agents/page/PageNetworkAgent.h:
  • inspector/agents/worker/WorkerNetworkAgent.cpp:
  • inspector/agents/worker/WorkerNetworkAgent.h:
  • page/SecurityPolicy.cpp:

(WebCore::WTF_REQUIRES_LOCK):
(WebCore::SecurityPolicy::isAccessAllowed):
(WebCore::SecurityPolicy::addOriginAccessAllowlistEntry):
(WebCore::SecurityPolicy::removeOriginAccessAllowlistEntry):
(WebCore::SecurityPolicy::resetOriginAccessAllowlists):
(WebCore::SecurityPolicy::allowAccessTo):

  • page/cocoa/ResourceUsageThreadCocoa.mm:

(WebCore::ResourceUsageThread::platformCollectCPUData):

  • page/linux/ResourceUsageThreadLinux.cpp:

(WebCore::ResourceUsageThread::platformCollectCPUData):

  • platform/GenericTaskQueue.cpp:

(WebCore::TaskDispatcher<Timer>::postTask):
(WebCore::TaskDispatcher<Timer>::sharedTimerFired):
(WebCore::TaskDispatcher<Timer>::pendingDispatchers):
(WebCore::TaskDispatcher<Timer>::dispatchOneTask):

  • platform/GenericTaskQueue.h:
  • platform/LegacySchemeRegistry.cpp:

(WebCore::allBuiltinSchemes):
(WebCore::WTF_REQUIRES_LOCK):
(WebCore::LegacySchemeRegistry::registerURLSchemeAsLocal):
(WebCore::LegacySchemeRegistry::removeURLSchemeRegisteredAsLocal):
(WebCore::LegacySchemeRegistry::registerURLSchemeAsHandledBySchemeHandler):
(WebCore::LegacySchemeRegistry::schemeIsHandledBySchemeHandler):
(WebCore::LegacySchemeRegistry::shouldTreatURLSchemeAsLocal):
(WebCore::LegacySchemeRegistry::registerURLSchemeAsNoAccess):
(WebCore::LegacySchemeRegistry::shouldTreatURLSchemeAsNoAccess):
(WebCore::LegacySchemeRegistry::registerURLSchemeAsDisplayIsolated):
(WebCore::LegacySchemeRegistry::shouldTreatURLSchemeAsDisplayIsolated):
(WebCore::LegacySchemeRegistry::registerURLSchemeAsSecure):
(WebCore::LegacySchemeRegistry::shouldTreatURLSchemeAsSecure):
(WebCore::LegacySchemeRegistry::canDisplayOnlyIfCanRequest):
(WebCore::LegacySchemeRegistry::registerAsCanDisplayOnlyIfCanRequest):
(WebCore::LegacySchemeRegistry::registerURLSchemeAsBypassingContentSecurityPolicy):
(WebCore::LegacySchemeRegistry::removeURLSchemeRegisteredAsBypassingContentSecurityPolicy):
(WebCore::LegacySchemeRegistry::schemeShouldBypassContentSecurityPolicy):
(WebCore::LegacySchemeRegistry::registerURLSchemeAsCachePartitioned):
(WebCore::LegacySchemeRegistry::shouldPartitionCacheForURLScheme):

  • platform/audio/mac/FFTFrameMac.cpp:

(WebCore::WTF_REQUIRES_LOCK):
(WebCore::FFTFrame::fftSetupForSize):

  • platform/graphics/MediaPlayer.cpp:

(WebCore::WTF_REQUIRES_LOCK):
(WebCore::installedMediaEngines):
(WebCore::MediaPlayer::resetMediaEngines):

  • platform/ios/QuickLook.mm:

(WebCore::WTF_REQUIRES_LOCK):
(WebCore::removeQLPreviewConverterForURL):
(WebCore::addQLPreviewConverterWithFileForURL):

  • platform/ios/WebSQLiteDatabaseTrackerClient.mm:

(WTF_REQUIRES_LOCK):
(+[WebDatabaseTransactionBackgroundTaskController startBackgroundTask]):
(+[WebDatabaseTransactionBackgroundTaskController endBackgroundTask]):

  • platform/network/mac/UTIUtilities.mm:

(WebCore::WTF_REQUIRES_LOCK):
(WebCore::UTIFromMIMEType):

  • platform/sql/SQLiteDatabase.cpp:

(WebCore::WTF_GUARDED_BY_LOCK):
(WebCore::SQLiteDatabase::setIsDatabaseOpeningForbidden):
(WebCore::SQLiteDatabase::open):

  • platform/sql/SQLiteDatabaseTracker.cpp:

(WebCore::SQLiteDatabaseTracker::WTF_GUARDED_BY_LOCK):
(WebCore::SQLiteDatabaseTracker::setClient):
(WebCore::SQLiteDatabaseTracker::incrementTransactionInProgressCount):
(WebCore::SQLiteDatabaseTracker::decrementTransactionInProgressCount):
(WebCore::SQLiteDatabaseTracker::hasTransactionInProgress):

  • platform/text/TextEncodingRegistry.cpp:

(WebCore::WTF_REQUIRES_LOCK):
(WebCore::newTextCodec):
(WebCore::atomCanonicalTextEncodingName):

  • workers/WorkerGlobalScope.cpp:

(WebCore::WTF_REQUIRES_LOCK):
(WebCore::WorkerGlobalScope::WorkerGlobalScope):
(WebCore::WorkerGlobalScope::~WorkerGlobalScope):
(WebCore::WorkerGlobalScope::releaseMemoryInWorkers):

  • workers/WorkerOrWorkletThread.cpp:

(WebCore::WorkerOrWorkletThread::workerOrWorkletThreadsLock):
(WebCore::WorkerOrWorkletThread::WorkerOrWorkletThread):
(WebCore::WorkerOrWorkletThread::~WorkerOrWorkletThread):
(WebCore::WorkerOrWorkletThread::releaseFastMallocFreeMemoryInAllThreads):

  • workers/WorkerOrWorkletThread.h:

Source/WTF:

  • wtf/Threading.cpp:

(WTF::Thread::allThreadsLock):
(WTF::Thread::create):
(WTF::Thread::didExit):

  • wtf/Threading.h:
  • wtf/URL.cpp:

(WTF::WTF_REQUIRES_LOCK):
(WTF::registerDefaultPortForProtocolForTesting):
(WTF::clearDefaultPortForProtocolMapForTesting):
(WTF::defaultPortForProtocol):

  • wtf/cf/LanguageCF.cpp:

(WTF::WTF_REQUIRES_LOCK):
(WTF::platformLanguageDidChange):
(WTF::platformUserPreferredLanguages):

  • wtf/text/StringView.cpp:

(WTF::StringView::invalidate):
(WTF::StringView::adoptUnderlyingString):
(WTF::StringView::setUnderlyingString):

  • wtf/unicode/icu/CollatorICU.cpp:

(WTF::Collator::Collator):
(WTF::Collator::~Collator):

1:19 PM Changeset in webkit [277879] by Brent Fulgham
  • 4 edits in trunk/Source/WebKit

[Cocoa] GPU Process should recognize that pathForProcessContainer() might fail and handle it gracefully
https://bugs.webkit.org/show_bug.cgi?id=226086
<rdar://problem/78288016>

Reviewed by Tim Horton.

The GPU Process implementation of gpuProcessCachesDirectory does not recognize that WebKit often runs without
a container (e.g., as part of a daemon process). In such cases, the GPU process will attempt to create a
cache directory someplace outside of its sandbox and fail, preventing caching from happening.

We need to use the same logic we use in the WebContent process to address this use case.

To avoid making this mistake again, let's consolidate the logic in one method, and use it in the multiple places
that have this same code.

  • UIProcess/Cocoa/WebProcessPoolCocoa.mm:

(WebKit::WebProcessPool::cacheDirectoryInContainerOrHomeDirectory): Added.
(WebKit::WebProcessPool::cookieStorageDirectory): Use the new 'cacheDirectoryInContainerOrHomeDirectory' method.
(WebKit::WebProcessPool::networkingCachesDirectory): Ditto.
(WebKit::WebProcessPool::webContentCachesDirectory): Ditto.

  • UIProcess/GPU/GPUProcessProxy.cpp:

(WebKit::gpuProcessCachesDirectory): Ditto.

  • UIProcess/WebProcessPool.h:
1:17 PM Changeset in webkit [277878] by Fujii Hironori
  • 6 edits in trunk/Source/WebCore

ASSERTION FAILED: m_imageBufferResult->colorSpace() == m_resultColorSpace in FilterEffect::copyPremultipliedResult
https://bugs.webkit.org/show_bug.cgi?id=225907

Reviewed by Said Abou-Hallawa.

FilterEffect::copyPremultipliedResult has the assertion ensuring
m_imageBufferResult->colorSpace() matches m_resultColorSpace.
However, it happened to fail in !USE(CG) ports.

FilterEffect::transformResultColorSpace does nothing if USE(CG),
but it calls ImageBuffer::transformColorSpace otherwise.

ImageBuffer::colorSpace() and ImageBufferBackend::colorSpace()
returned the old color space after ImageBuffer::transformColorSpace.
They should return the new color space.

After fixing the above problem, an assertion in
WebCore::convertImagePixels was going to fail. It asserts no color
space conversion happens.

FEColorMatrix, FEDropShadow and
ImageBufferBackend::convertToLuminanceMask were explicitly
specifying DestinationColorSpace::SRGB to getPixelBuffer. They
shouldn't convert the color space.

  • platform/graphics/ConcreteImageBuffer.h:
  • platform/graphics/ImageBufferBackend.cpp:

(WebCore::ImageBufferBackend::convertToLuminanceMask):

  • platform/graphics/cairo/ImageBufferCairoBackend.cpp:

(WebCore::ImageBufferCairoBackend::transformColorSpace):

  • platform/graphics/filters/FEColorMatrix.cpp:

(WebCore::FEColorMatrix::platformApplySoftware):

  • platform/graphics/filters/FEDropShadow.cpp:

(WebCore::FEDropShadow::platformApplySoftware):

1:12 PM Changeset in webkit [277877] by Chris Dumez
  • 7 edits in trunk/Source

Replace more static Locks with CheckedLocks in WebKit / WebKitLegacy
https://bugs.webkit.org/show_bug.cgi?id=226093

Reviewed by Darin Adler.

Replace more static Locks with CheckedLocks so that we can benefit from Clang Thread Safety Analysis.

Source/WebKit:

  • NetworkProcess/Classifier/WebResourceLoadStatisticsStore.cpp:

(WebKit::WebResourceLoadStatisticsStore::resourceLoadStatisticsUpdated):
(WebKit::WebResourceLoadStatisticsStore::suspend):
(WebKit::WebResourceLoadStatisticsStore::resume):

  • NetworkProcess/Classifier/WebResourceLoadStatisticsStore.h:
  • Platform/IPC/Connection.cpp:

(IPC::WTF_REQUIRES_LOCK):
(IPC::addAsyncReplyHandler):
(IPC::clearAsyncReplyHandlers):
(IPC::CompletionHandler<void):

  • WebProcess/Network/WebSocketStream.cpp:

(WebKit::WebSocketStream::streamWithIdentifier):
(WebKit::WebSocketStream::networkProcessCrashed):
(WebKit::WebSocketStream::WebSocketStream):
(WebKit::WebSocketStream::~WebSocketStream):

Source/WebKitLegacy/mac:

  • DOM/DOMInternal.mm:

(getDOMWrapper):
(addDOMWrapper):
(removeDOMWrapper):

12:47 PM Changeset in webkit [277876] by eric.carlson@apple.com
  • 10 edits
    2 adds in trunk

[Cocoa] Update AudioSession buffer size handling
https://bugs.webkit.org/show_bug.cgi?id=225927
rdar://76920375

Reviewed by Jer Noble.

Source/WebCore:

Previously we only set the audio session buffer size when there was an active
MediaSession. This meant that when no audio was being played or captured, the buffer
size would be left at whatever size was appropriate for the last MediaSession
stopped. This was especially bad when the last MediaSession played WebAudio
or captured audio because those require a smaller buffer size than the default,
and was made even worse when using the GPU process because it may live for much
longer than the last web process that played audio. Fix this by using the low power
buffer size when playing audio or when there is no MediaSession at all.

Add AudioBufferSize API test.

  • Modules/webaudio/AudioContext.h:

Make mediaType() return None if the context is suspended or stopped so the media
session manager won't set the buffer size for WebAudio.

  • platform/audio/cocoa/MediaSessionManagerCocoa.h:
  • platform/audio/cocoa/MediaSessionManagerCocoa.mm:

(WebCore::MediaSessionManagerCocoa::updateSessionState): Always use "low power"
buffer size when there is no WebAudio or audio capture.
(WebCore::MediaSessionManagerCocoa::addSession): Cache supported hardware buffer sizes.
(WebCore::MediaSessionManagerCocoa::audioOutputDeviceChanged): Update cached buffer
sizes.

  • testing/Internals.cpp:

(WebCore::Internals::currentAudioBufferSize const): Expose current audio session buffer
size for testing.

  • testing/Internals.h:
  • testing/Internals.idl:

Tools:

  • TestWebKitAPI/TestWebKitAPI.xcodeproj/project.pbxproj:
  • TestWebKitAPI/Tests/WebKit/audio-buffer-size.html: Added.
  • TestWebKitAPI/Tests/WebKitCocoa/AudioBufferSize.mm: Added.

(TestWebKitAPI::waitForBufferSizeChange):
(TestWebKitAPI::TEST):

  • TestWebKitAPI/Tests/WebKitCocoa/PreferredAudioBufferSize.mm:

(TEST_F):

12:24 PM Changeset in webkit [277875] by Chris Dumez
  • 11 edits in trunk/Source

Use CheckedLock more in cases where we try-lock
https://bugs.webkit.org/show_bug.cgi?id=226056

Reviewed by Alex Christensen.

Use CheckedLock more in cases where we try-lock to benefit from Clang
Thread Safety Analysis.

Source/WebCore:

  • Modules/webaudio/AudioParamTimeline.cpp:

(WebCore::AudioParamTimeline::setValueAtTime):
(WebCore::AudioParamTimeline::linearRampToValueAtTime):
(WebCore::AudioParamTimeline::exponentialRampToValueAtTime):
(WebCore::AudioParamTimeline::setTargetAtTime):
(WebCore::AudioParamTimeline::setValueCurveAtTime):
(WebCore::AudioParamTimeline::cancelScheduledValues):
(WebCore::AudioParamTimeline::cancelAndHoldAtTime):
(WebCore::AudioParamTimeline::valueForContextTime):
(WebCore::AudioParamTimeline::valuesForFrameRange):
(WebCore::AudioParamTimeline::hasValues const):

  • Modules/webaudio/AudioParamTimeline.h:
  • platform/audio/AudioDestination.h:

(WebCore::AudioDestination::WTF_GUARDED_BY_LOCK):
(WebCore::AudioDestination::AudioDestination):
(WebCore::AudioDestination::clearCallback):
(WebCore::AudioDestination::callRenderCallback):

  • platform/mediastream/cocoa/AudioMediaStreamTrackRendererUnit.cpp:

(WebCore::AudioMediaStreamTrackRendererUnit::addSource):
(WebCore::AudioMediaStreamTrackRendererUnit::removeSource):
(WebCore::AudioMediaStreamTrackRendererUnit::render):

  • platform/mediastream/cocoa/AudioMediaStreamTrackRendererUnit.h:

Source/WebKit:

  • WebProcess/GPU/webrtc/LibWebRTCCodecs.cpp:

(WebKit::LibWebRTCCodecs::releaseDecoder):
(WebKit::LibWebRTCCodecs::registerDecodeFrameCallback):
(WebKit::LibWebRTCCodecs::completedDecoding):
(WebKit::LibWebRTCCodecs::releaseEncoder):
(WebKit::LibWebRTCCodecs::registerEncodeFrameCallback):
(WebKit::LibWebRTCCodecs::completedEncoding):

  • WebProcess/GPU/webrtc/LibWebRTCCodecs.h:

(WebKit::LibWebRTCCodecs::Decoder::WTF_GUARDED_BY_LOCK):
(WebKit::LibWebRTCCodecs::Encoder::WTF_GUARDED_BY_LOCK):

Source/WTF:

  • wtf/Logger.cpp:
  • wtf/Logger.h:

(WTF::Logger::addObserver):
(WTF::Logger::removeObserver):
(WTF::Logger::log):
(WTF::Logger::logVerbose):
(WTF::Logger::WTF_RETURNS_LOCK):

12:04 PM Changeset in webkit [277874] by pvollan@apple.com
  • 5 edits in trunk/Source

Accessibility caption styles does not always reflect the selection
https://bugs.webkit.org/show_bug.cgi?id=226084
<rdar://75426845>

Reviewed by Chris Fleizach.

Source/WebCore:

Export a soft linked constant.

  • WebCore.xcodeproj/project.pbxproj:
  • platform/cf/MediaAccessibilitySoftLink.cpp:

Source/WebKit:

This is caused by a race between pushing the caption preference value to the WebContent process and receiving the notification in that process.
This patch addresses this by reposting the notification after having set the preference value in the WebContent process.

  • WebProcess/cocoa/WebProcessCocoa.mm:

(WebKit::captionProfilePreferenceKey):
(WebKit::dispatchSimulatedNotificationsForPreferenceChange):

11:54 AM Changeset in webkit [277873] by mmaxfield@apple.com
  • 2 edits in trunk/Source/WebKit

[Cocoa] REGRESSION(Sandbox): Font smoothing within Safari doesn't seem to respect AppleFontSmoothing
https://bugs.webkit.org/show_bug.cgi?id=226066
<rdar://problem/72795817>

Reviewed by Per Arne Vollan.

We accidentally blocked access to the relevant defaults database.

It turns out this is untestable. I can't use the actual functionality without actually setting the preference
for the whole user (and all their apps). And, I can't use sandbox_check() to make sure the file is readable
because it's in the user's home directory, so the path to check will be different for every user.

  • WebProcess/com.apple.WebProcess.sb.in:
11:24 AM Changeset in webkit [277872] by Wenson Hsieh
  • 3 edits in trunk/Source/WebKit

[iOS] Plumb element bounds when presenting QLPreviewController for image extraction
https://bugs.webkit.org/show_bug.cgi?id=226085
rdar://76020349

Reviewed by Tim Horton.

Include the previewed element's bounding rect when presenting QuickLook for image extraction. See the bug for
more details.

  • UIProcess/ios/WKActionSheetAssistant.h:
  • UIProcess/ios/WKActionSheetAssistant.mm:

(-[WKActionSheetAssistant handleElementActionWithType:element:needsInteraction:]):

11:11 AM Changeset in webkit [277871] by Jonathan Bedard
  • 1 edit
    83 deletes in trunk/LayoutTests

[LayoutTests] Delete unused LayoutTests/svg resources
https://bugs.webkit.org/show_bug.cgi?id=226057
<rdar://problem/78284735>

Reviewed by Alexey Proskuryakov.

  • svg/W3C-SVG-1.1/resources/SVG-1.1-monolithic-fixed.dtd: Removed.
  • svg/W3C-SVG-1.1/resources/SVGImageTest.svg: Removed.
  • svg/W3C-SVG-1.1/resources/animation-extRef-image1.svg: Removed.
  • svg/W3C-SVG-1.1/resources/animation-extRef-image2.svg: Removed.
  • svg/W3C-SVG-1.1/resources/animation-extRef-image3.svg: Removed.
  • svg/W3C-SVG-1.1/resources/bullet-small.png: Removed.
  • svg/W3C-SVG-1.1/resources/bullet-white.png: Removed.
  • svg/W3C-SVG-1.1/resources/bullet.png: Removed.
  • svg/W3C-SVG-1.1/resources/bumpMap.png: Removed.
  • svg/W3C-SVG-1.1/resources/coords-units-01-f.png: Removed.
  • svg/W3C-SVG-1.1/resources/coords-units-01-f.svg: Removed.
  • svg/W3C-SVG-1.1/resources/diagarrow.png: Removed.
  • svg/W3C-SVG-1.1/resources/fillChangeColor.ICM: Removed.
  • svg/W3C-SVG-1.1/resources/filters-composite-01-f.svg: Removed.
  • svg/W3C-SVG-1.1/resources/gam030b.png: Removed.
  • svg/W3C-SVG-1.1/resources/gam045b.png: Removed.
  • svg/W3C-SVG-1.1/resources/gam056b.png: Removed.
  • svg/W3C-SVG-1.1/resources/gam100b.png: Removed.
  • svg/W3C-SVG-1.1/resources/gam200b.png: Removed.
  • svg/W3C-SVG-1.1/resources/greentopbutton.jpg: Removed.
  • svg/W3C-SVG-1.1/resources/image1.png: Removed.
  • svg/W3C-SVG-1.1/resources/image1_b.png: Removed.
  • svg/W3C-SVG-1.1/resources/image2_b.jpg: Removed.
  • svg/W3C-SVG-1.1/resources/image2_b.png: Removed.
  • svg/W3C-SVG-1.1/resources/leftarrow.png: Removed.
  • svg/W3C-SVG-1.1/resources/linking-uri-01-f-1st.png: Removed.
  • svg/W3C-SVG-1.1/resources/linking-uri-01-f-2nd.png: Removed.
  • svg/W3C-SVG-1.1/resources/linking-uri-01-f-3rd.png: Removed.
  • svg/W3C-SVG-1.1/resources/linking-uri-01-f-4th.png: Removed.
  • svg/W3C-SVG-1.1/resources/linking-uri-01-f-start.png: Removed.
  • svg/W3C-SVG-1.1/resources/linking-uri-03-f-1st.png: Removed.
  • svg/W3C-SVG-1.1/resources/linking-uri-03-f-start.png: Removed.
  • svg/W3C-SVG-1.1/resources/makealpha.svg: Removed.
  • svg/W3C-SVG-1.1/resources/myimage.jpg: Removed.
  • svg/W3C-SVG-1.1/resources/nav_bullet.png: Removed.
  • svg/W3C-SVG-1.1/resources/nav_down.png: Removed.
  • svg/W3C-SVG-1.1/resources/nav_downleft.png: Removed.
  • svg/W3C-SVG-1.1/resources/nav_downright.png: Removed.
  • svg/W3C-SVG-1.1/resources/nav_frame.png: Removed.
  • svg/W3C-SVG-1.1/resources/nav_left.png: Removed.
  • svg/W3C-SVG-1.1/resources/nav_noframe.png: Removed.
  • svg/W3C-SVG-1.1/resources/nav_right.png: Removed.
  • svg/W3C-SVG-1.1/resources/nav_svg.png: Removed.
  • svg/W3C-SVG-1.1/resources/nav_up.png: Removed.
  • svg/W3C-SVG-1.1/resources/nav_upleft.png: Removed.
  • svg/W3C-SVG-1.1/resources/nav_upright.png: Removed.
  • svg/W3C-SVG-1.1/resources/old-name-2-new-name1.html: Removed.
  • svg/W3C-SVG-1.1/resources/paths-data-01-f.png: Removed.
  • svg/W3C-SVG-1.1/resources/paths-data-01-f.svg: Removed.
  • svg/W3C-SVG-1.1/resources/paths-data-02-f.png: Removed.
  • svg/W3C-SVG-1.1/resources/paths-data-02-f.svg: Removed.
  • svg/W3C-SVG-1.1/resources/paths-data-03-f.png: Removed.
  • svg/W3C-SVG-1.1/resources/paths-data-04-f.png: Removed.
  • svg/W3C-SVG-1.1/resources/paths-data-04-f.svg: Removed.
  • svg/W3C-SVG-1.1/resources/plant.jpg: Removed.
  • svg/W3C-SVG-1.1/resources/rects_b.svg: Removed.
  • svg/W3C-SVG-1.1/resources/rightarrow.png: Removed.
  • svg/W3C-SVG-1.1/resources/shapes-ellipse-01-b.svg: Removed.
  • svg/W3C-SVG-1.1/resources/shapes-ellipse-01-f.png: Removed.
  • svg/W3C-SVG-1.1/resources/shapes-ellipse-01-f.svg: Removed.
  • svg/W3C-SVG-1.1/resources/shapes-rect-01-b.svg: Removed.
  • svg/W3C-SVG-1.1/resources/shapes-rect-01-f.png: Removed.
  • svg/W3C-SVG-1.1/resources/shapes-rect-01-f.svg: Removed.
  • svg/W3C-SVG-1.1/resources/struct-frag-01-B.svg: Removed.
  • svg/W3C-SVG-1.1/resources/struct-image-02.png: Removed.
  • svg/W3C-SVG-1.1/resources/svgRef4.css: Removed.
  • svg/W3C-SVG-1.1/resources/svgRef4.svg: Removed.
  • svg/W3C-SVG-1.1/resources/text-align-01-f.svg: Removed.
  • svg/W3C-SVG-1.1/resources/text-align-03-f.svg: Removed.
  • svg/W3C-SVG-1.1/resources/text-tref-01-f.svg: Removed.
  • svg/W3C-SVG-1.1/resources/text-ws-01-f.svg: Removed.
  • svg/W3C-SVG-1.1/resources/toc-sv.svg: Removed.
  • svg/W3C-SVG-1.1/resources/toc-svcmp.svg: Removed.
  • svg/W3C-SVG-1.1/resources/uparrow.png: Removed.
  • svg/as-image/resources/circle-nosize.svg: Removed.
  • svg/custom/resources/object-sizing-height-50p.svg: Removed.
  • svg/custom/resources/object-sizing-width-50p-height-50p.svg: Removed.
  • svg/custom/resources/object-sizing-width-50p-height-75p.svg: Removed.
  • svg/custom/resources/object-sizing-width-50p.svg: Removed.
  • svg/custom/resources/object-sizing-width-75p-height-50p.svg: Removed.
  • svg/dom/SVGScriptElement/resources/script-load2.js: Removed.
  • svg/dom/SVGScriptElement/resources/script-load3.js: Removed.
  • svg/dom/SVGScriptElement/resources/script-load4.js: Removed.
10:48 AM Changeset in webkit [277870] by Russell Epstein
  • 1 copy in tags/Safari-611.2.7.1.6

Tag Safari-611.2.7.1.6.

10:44 AM Changeset in webkit [277869] by Russell Epstein
  • 8 edits in branches/safari-611.2.7.1-branch/Source

Versioning.

WebKit-7611.2.7.1.6

10:16 AM Changeset in webkit [277868] by commit-queue@webkit.org
  • 4 edits in trunk

grid track size should reject unitless length
https://bugs.webkit.org/show_bug.cgi?id=189137

Patch by Rob Buis <rbuis@igalia.com> on 2021-05-21
Reviewed by Sergio Villar Senin.

LayoutTests/imported/w3c:

Update improved test result.

  • web-platform-tests/quirks/unitless-length/excluded-properties-001-expected.txt:

Source/WebCore:

Reject unitless length's for grid track sizes in quirks mode.

Behavior matches Chrome and Firefox.

  • css/parser/CSSPropertyParser.cpp:

(WebCore::consumeGridBreadth):

10:07 AM Changeset in webkit [277867] by jer.noble@apple.com
  • 3 edits
    4 adds in trunk

[Cocoa] Last few seconds of 'audio/webm; codecs=vorbis' appended to a SampleBuffer are not played
https://bugs.webkit.org/show_bug.cgi?id=226069
<rdar://78004793>

Reviewed by Eric Carlson.

Source/WebCore:

Test: platform/mac-bigsur/media/media-source/media-vorbis-partial.html

When parsing samples from a WebM file, the samples emitted by the parser can be very short in
duration, which is ineffecient both in storage costs in our SampleMap, as well as in decoding
CPU costs, as each sample must be fed into the decoder separately. So the parser will group
together these small samples into a larger "meta sample" with a duration no shorter than 2s.

However, at the end of a file, no more sample data will be appended, up to 2s of audio data
will not be emitted from the parser.

At the end of an append, always flush audio track data to ensure that all parsed samples are
emitted, regardless of their collective duration.

  • platform/graphics/cocoa/SourceBufferParserWebM.cpp:

(WebCore::SourceBufferParserWebM::appendData):

LayoutTests:

  • platform/mac-bigsur/media/media-source/content/test-vorbis-manifest.json: Added.
  • platform/mac-bigsur/media/media-source/content/test-vorbis.webm: Added.
  • platform/mac-bigsur/media/media-source/media-vorbis-partial-expected.txt: Added.
  • platform/mac-bigsur/media/media-source/media-vorbis-partial.html: Added.
10:03 AM Changeset in webkit [277866] by Russell Epstein
  • 2 edits in branches/safari-612.1.15.0-branch/Source/WebKit

Cherry-pick r277791. rdar://problem/78313265

[iOS] Add missing method in sandbox IOKit filter
https://bugs.webkit.org/show_bug.cgi?id=225975
<rdar://78212330>

Reviewed by Brent Fulgham.

Add missing method in IOSurfaceRootUserClient filter on iOS.

  • Resources/SandboxProfiles/ios/com.apple.WebKit.WebContent.sb:

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

9:41 AM Changeset in webkit [277865] by Kate Cheney
  • 8 edits
    8 adds in trunk

FrameLoader::loadURL, FrameLoader::loadPostRequest not attributing requests as app bound
https://bugs.webkit.org/show_bug.cgi?id=225923
<rdar://problem/78160933>

Reviewed by Alex Christensen.

Source/WebCore:

Tests: http/tests/in-app-browser-privacy/app-bound-attribution-load-url.html

http/tests/in-app-browser-privacy/app-bound-attribution-ping-load.html
http/tests/in-app-browser-privacy/app-bound-attribution-post-request.html

Update FrameLoader::addExtraFieldsToRequest to add the app-bound
value to a request, like for loadURL, loadPostRequest, or ping loads.
Change the name to reflect this use case, which updates the request
but does not add any extra header fields.

Other cases are already covered in WebLoaderStrategy::loadResource.

  • loader/FrameLoader.cpp:

(WebCore::FrameLoader::loadURL):
(WebCore::FrameLoader::load):
The main navigation uses the old document loader, so we don't want to
set the app-bound value based on that. The request should have the
correct value already from the UIProcess.
(WebCore::FrameLoader::updateRequestAndAddExtraFields):
(WebCore::FrameLoader::loadPostRequest):
(WebCore::FrameLoader::loadResourceSynchronously):
We can remove setting the app bound value here now that we set the value in
addExtraFieldsToRequest.
(WebCore::FrameLoader::loadDifferentDocumentItem):
(WebCore::FrameLoader::addExtraFieldsToRequest): Deleted.

  • loader/FrameLoader.h:
  • loader/PingLoader.cpp:

(WebCore::PingLoader::loadImage):
(WebCore::PingLoader::sendPing):
(WebCore::PingLoader::sendViolationReport):

  • loader/ResourceLoader.cpp:

(WebCore::ResourceLoader::init):

  • loader/cache/CachedResource.cpp:

(WebCore::CachedResource::load):

LayoutTests:

  • http/tests/in-app-browser-privacy/app-bound-attribution-load-url-expected.txt: Added.
  • http/tests/in-app-browser-privacy/app-bound-attribution-load-url.html: Added.
  • http/tests/in-app-browser-privacy/app-bound-attribution-ping-load-expected.txt: Added.
  • http/tests/in-app-browser-privacy/app-bound-attribution-ping-load.html: Added.
  • http/tests/in-app-browser-privacy/app-bound-attribution-post-request-expected.txt: Added.
  • http/tests/in-app-browser-privacy/app-bound-attribution-post-request.html: Added.
  • http/tests/in-app-browser-privacy/resources/post.py: Added.
  • http/tests/navigation/resources/check-ping-app-bound-data.py: Added.
  • platform/ios-wk2/TestExpectations:

These tests rely on internal additions, so I will skip it here and
unskip in the future.

9:39 AM Changeset in webkit [277864] by youenn@apple.com
  • 2 edits in trunk/Source/WebCore

Add some logging for the 'FetchEvent is destroyed' case
https://bugs.webkit.org/show_bug.cgi?id=226071

Reviewed by Kate Cheney.

  • workers/service/FetchEvent.cpp:

(WebCore::FetchEvent::~FetchEvent):

9:26 AM Changeset in webkit [277863] by Russell Epstein
  • 8 edits in branches/safari-612.1.15.0-branch/Source

Versioning.

WebKit-7612.1.15.0.4

8:55 AM Changeset in webkit [277862] by imanol
  • 7 edits in trunk

Fix use after move bug in WebXRSession
https://bugs.webkit.org/show_bug.cgi?id=226074

Reviewed by Sergio Villar Senin.

Source/WebCore:

This patch fixes FrameData usage after move in WebXRSession, a regression from bug 226074.
It also removes an unneeded FrameData copy into WebXRFrame.

Tested by WebXR WPT.

  • Modules/webxr/WebXRFrame.cpp: Use frameData from session instead of holding an extra copy

(WebCore::WebXRFrame::populatePose):
(WebCore::WebXRFrame::getViewerPose):

  • Modules/webxr/WebXRFrame.h: Remove setFrameData and m_data.

(WebCore::WebXRFrame::setTime):

  • Modules/webxr/WebXRSession.cpp: Fix usage after move.

(WebCore::WebXRSession::onFrame):

  • platform/xr/PlatformXR.h:

(PlatformXR::Device::FrameData::copy const): Add missing members in the copy function.

LayoutTests:

Update WebXR test expectations.

  • platform/wpe/TestExpectations:
7:54 AM Changeset in webkit [277861] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Function paintRenderingResultsToCanvas expects a reference, not a
pointer. Fixed the compile error.
https://bugs.webkit.org/show_bug.cgi?id=226073

Patch by Eleni Maria Stea <hikiko> on 2021-05-21
Reviewed by Adrian Perez de Castro.

  • platform/graphics/nicosia/texmap/NicosiaGCGLLayer.cpp:

(Nicosia::GCGLLayer::swapBuffersIfNeeded):

7:50 AM Changeset in webkit [277860] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Fixed unreached end of function compiler warning in DataURLDecoder.
https://bugs.webkit.org/show_bug.cgi?id=226079

Patch by Eleni Maria Stea <hikiko> on 2021-05-21
Reviewed by Adrian Perez de Castro.

  • platform/network/DataURLDecoder.cpp:

(WebCore::DataURLDecoder::decodeBase64):

7:21 AM Changeset in webkit [277859] by Jonathan Bedard
  • 1 edit
    251 deletes in trunk/LayoutTests

[LayoutTests] Delete unused imported/blink resources
https://bugs.webkit.org/show_bug.cgi?id=226047
<rdar://problem/78280660>

Reviewed by Dewei Zhu.

  • imported/blink/compositing/iframes/resources/subframe-with-fixed-position-element.html: Removed.
  • imported/blink/compositing/layer-creation/resources: Removed.
  • imported/blink/compositing/overflow/resources: Removed.
  • imported/blink/css3/blending/resources: Removed.
  • imported/blink/editing/execCommand/resources: Removed.
  • imported/blink/editing/selection/resources: Removed.
  • imported/blink/fast/canvas/resources: Removed.
  • imported/blink/fast/css/resources/ahem.html: Removed.
  • imported/blink/fast/css/resources/circle-small.svg: Removed.
  • imported/blink/fast/css/resources/font-face-local-file-frame.html: Removed.
  • imported/blink/fast/css/resources/media-query-with-cached-sheet-next.html: Removed.
  • imported/blink/fast/css/resources/resize-corner-tracking-touch-iframe.html: Removed.
  • imported/blink/fast/dom/HTMLDialogElement/resources: Removed.
  • imported/blink/fast/dom/HTMLImageElement/resources: Removed.
  • imported/blink/fast/dom/Range/resources: Removed.
  • imported/blink/fast/dom/Window/resources: Removed.
  • imported/blink/fast/dom/custom/resources: Removed.
  • imported/blink/fast/dom/shadow/resources: Removed.
  • imported/blink/fast/events/resources: Removed.
  • imported/blink/fast/events/touch/gesture/resources: Removed.
  • imported/blink/fast/events/touch/resources: Removed.
  • imported/blink/fast/forms/date-multiple-fields/resources: Removed.
  • imported/blink/fast/forms/datetimelocal-multiple-fields/resources: Removed.
  • imported/blink/fast/forms/month-multiple-fields/resources: Removed.
  • imported/blink/fast/forms/resources/popup-no-crash.html: Removed.
  • imported/blink/fast/forms/time-multiple-fields/resources: Removed.
  • imported/blink/fast/forms/week-multiple-fields/resources: Removed.
  • imported/blink/fast/frames/resources/detach-frame-nested-subframe.html: Removed.
  • imported/blink/fast/frames/resources/frame-set-location-badstring.html: Removed.
  • imported/blink/fast/html/imports/resources/async-child.html: Removed.
  • imported/blink/fast/html/imports/resources/async-root-child-1.html: Removed.
  • imported/blink/fast/html/imports/resources/async-root-child-2.html: Removed.
  • imported/blink/fast/html/imports/resources/async-root.html: Removed.
  • imported/blink/fast/html/imports/resources/child-frame-with-import.html: Removed.
  • imported/blink/fast/html/imports/resources/custom-element-hello-1.html: Removed.
  • imported/blink/fast/html/imports/resources/custom-element-hello-2.html: Removed.
  • imported/blink/fast/html/imports/resources/custom-element-hello-3.html: Removed.
  • imported/blink/fast/html/imports/resources/custom-element-hello-4.html: Removed.
  • imported/blink/fast/html/imports/resources/custom-element-hello-5.html: Removed.
  • imported/blink/fast/html/imports/resources/custom-element-hello-6.html: Removed.
  • imported/blink/fast/html/imports/resources/custom-element-hello-7.html: Removed.
  • imported/blink/fast/html/imports/resources/custom-element-hello-8.html: Removed.
  • imported/blink/fast/html/imports/resources/custom-element-hello-parent-12.html: Removed.
  • imported/blink/fast/html/imports/resources/custom-element-hello-parent-34.html: Removed.
  • imported/blink/fast/html/imports/resources/custom-element-hello-parent-56.html: Removed.
  • imported/blink/fast/html/imports/resources/custom-element-hello.html: Removed.
  • imported/blink/fast/html/imports/resources/custom-element-style.html: Removed.
  • imported/blink/fast/html/imports/resources/cycle-two-parents-2-b.html: Removed.
  • imported/blink/fast/html/imports/resources/cycle-two-parents-3-a.html: Removed.
  • imported/blink/fast/html/imports/resources/do-document-write.html: Removed.
  • imported/blink/fast/html/imports/resources/events-inline.html: Removed.
  • imported/blink/fast/html/imports/resources/hello-css.html: Removed.
  • imported/blink/fast/html/imports/resources/hello-legacy.html: Removed.
  • imported/blink/fast/html/imports/resources/hello-nodtd.html: Removed.
  • imported/blink/fast/html/imports/resources/import-custom-element-onload-child.html: Removed.
  • imported/blink/fast/html/imports/resources/import-custom-element-onload-grandchild.html: Removed.
  • imported/blink/fast/html/imports/resources/import-events-target.html: Removed.
  • imported/blink/fast/html/imports/resources/import-link-with-media-query.html: Removed.
  • imported/blink/fast/html/imports/resources/meta-encoding.html: Removed.
  • imported/blink/fast/html/imports/resources/nest-dup-2-parent.html: Removed.
  • imported/blink/fast/html/imports/resources/nest-dup-2.html: Removed.
  • imported/blink/fast/html/imports/resources/nest-dup-child.html: Removed.
  • imported/blink/fast/html/imports/resources/nest-dup-grand-parent.html: Removed.
  • imported/blink/fast/html/imports/resources/nest-dup-parent.html: Removed.
  • imported/blink/fast/html/imports/resources/nest-dup.html: Removed.
  • imported/blink/fast/html/imports/resources/no-encoding.html: Removed.
  • imported/blink/fast/html/imports/resources/nr1-i0.html: Removed.
  • imported/blink/fast/html/imports/resources/nr1-i1.html: Removed.
  • imported/blink/fast/html/imports/resources/nr1-i2.html: Removed.
  • imported/blink/fast/html/imports/resources/nr1-i3.html: Removed.
  • imported/blink/fast/html/imports/resources/nr1-i4.html: Removed.
  • imported/blink/fast/html/imports/resources/nr1-i5.html: Removed.
  • imported/blink/fast/html/imports/resources/nr2-i0.html: Removed.
  • imported/blink/fast/html/imports/resources/nr2-i1.html: Removed.
  • imported/blink/fast/html/imports/resources/nr2-i2.html: Removed.
  • imported/blink/fast/html/imports/resources/nr2-i3.html: Removed.
  • imported/blink/fast/html/imports/resources/nr2-i4.html: Removed.
  • imported/blink/fast/html/imports/resources/nr2-i5.html: Removed.
  • imported/blink/fast/html/imports/resources/nr2-i6.html: Removed.
  • imported/blink/fast/html/imports/resources/nr2-i7.html: Removed.
  • imported/blink/fast/html/imports/resources/nr3-i6.html: Removed.
  • imported/blink/fast/html/imports/resources/nr3-i7.html: Removed.
  • imported/blink/fast/html/imports/resources/nr4-i0.html: Removed.
  • imported/blink/fast/html/imports/resources/nr4-i1.html: Removed.
  • imported/blink/fast/html/imports/resources/nr4-i2.html: Removed.
  • imported/blink/fast/html/imports/resources/nr4-i3.html: Removed.
  • imported/blink/fast/html/imports/resources/nr4-i4.html: Removed.
  • imported/blink/fast/html/imports/resources/nr4-i5.html: Removed.
  • imported/blink/fast/html/imports/resources/nr4-i6.html: Removed.
  • imported/blink/fast/html/imports/resources/nr4-i7.html: Removed.
  • imported/blink/fast/html/imports/resources/nr4-i8.html: Removed.
  • imported/blink/fast/html/imports/resources/nr4-i9.html: Removed.
  • imported/blink/fast/html/imports/resources/nr4-ia.html: Removed.
  • imported/blink/fast/html/imports/resources/nr5-i9.html: Removed.
  • imported/blink/fast/html/imports/resources/nr5-ia.html: Removed.
  • imported/blink/fast/html/imports/resources/onload-root.html: Removed.
  • imported/blink/fast/html/imports/resources/script-document-write.html: Removed.
  • imported/blink/fast/html/imports/resources/script-leaf.html: Removed.
  • imported/blink/fast/html/imports/resources/script-prototype-test.html: Removed.
  • imported/blink/fast/html/imports/resources/setting-greet-var.html: Removed.
  • imported/blink/fast/html/imports/resources/shared-crash-child.html: Removed.
  • imported/blink/fast/html/imports/resources/shared-crash-dup.html: Removed.
  • imported/blink/fast/html/imports/resources/shared-crash-grandchild.html: Removed.
  • imported/blink/fast/html/imports/resources/shared-crash-root.html: Removed.
  • imported/blink/fast/html/imports/resources/style-basic-child-dynamic.html: Removed.
  • imported/blink/fast/html/imports/resources/style-basic-child.html: Removed.
  • imported/blink/fast/html/imports/resources/style-basic-grandchild.html: Removed.
  • imported/blink/fast/html/imports/resources/style-blue.html: Removed.
  • imported/blink/fast/html/imports/resources/style-link-block-child.html: Removed.
  • imported/blink/fast/html/imports/resources/style-link-child.html: Removed.
  • imported/blink/fast/html/imports/resources/style-link-grandchild.html: Removed.
  • imported/blink/fast/html/imports/resources/style-red-parent.html: Removed.
  • imported/blink/fast/html/imports/resources/style-red.html: Removed.
  • imported/blink/fast/html/imports/resources/style-target-blue.html: Removed.
  • imported/blink/fast/html/imports/resources/style-tree-order-dynamic-following.html: Removed.
  • imported/blink/fast/html/imports/resources/style-tree-order-dynamic-leading.html: Removed.
  • imported/blink/fast/html/imports/resources/style-tree-order-hide-import-green.html: Removed.
  • imported/blink/fast/html/imports/resources/style-tree-order-hide-import-red.html: Removed.
  • imported/blink/fast/html/imports/resources/style-tree-order-hide-link.html: Removed.
  • imported/blink/fast/html/imports/resources/style-tree-order-hide-shared.html: Removed.
  • imported/blink/fast/html/imports/resources/style-tree-order-hide-style.html: Removed.
  • imported/blink/fast/html/imports/resources/style-tree-order-hide-subimport-green.html: Removed.
  • imported/blink/fast/html/imports/resources/style-tree-order-hide-subimport-red.html: Removed.
  • imported/blink/fast/html/imports/resources/style-tree-order-hide-subimport.html: Removed.
  • imported/blink/fast/html/resources: Removed.
  • imported/blink/fast/images/resources: Removed.
  • imported/blink/fast/loader/resources/javascript-detached-frame-iframe.html: Removed.
  • imported/blink/fast/multicol/resources: Removed.
  • imported/blink/fast/parser/resources: Removed.
  • imported/blink/fast/repaint/resources: Removed.
  • imported/blink/fast/workers/resources: Removed.
  • imported/blink/fast/xsl/resources: Removed.
  • imported/blink/fullscreen/resources: Removed.
  • imported/blink/http/tests/css/resources/cors-ahem.php: Removed.
  • imported/blink/http/tests/css/resources/delayedCircle.php: Removed.
  • imported/blink/http/tests/css/resources/performance-info-with-cached-sheet-next.html: Removed.
  • imported/blink/http/tests/css/resources/referrer-check.php: Removed.
  • imported/blink/http/tests/history/resources/frameset-dest.html: Removed.
  • imported/blink/http/tests/history/resources/push-state-in-grandchild-child.html: Removed.
  • imported/blink/http/tests/history/resources/push-state-in-grandchild-grandchild.html: Removed.
  • imported/blink/http/tests/misc/resources/form-post-success.html: Removed.
  • imported/blink/http/tests/misc/resources/frame-with-form-action-using-replace-child.html: Removed.
  • imported/blink/http/tests/misc/resources/generatedimage.php: Removed.
  • imported/blink/http/tests/misc/resources/iframe-accept-ch.php: Removed.
  • imported/blink/http/tests/misc/resources/image-checks-for-dpr.php: Removed.
  • imported/blink/http/tests/misc/resources/image-checks-for-viewport-width.php: Removed.
  • imported/blink/http/tests/misc/resources/image-checks-for-width.php: Removed.
  • imported/blink/http/tests/misc/resources/image-slow-out-of-viewport.pl: Removed.
  • imported/blink/http/tests/misc/resources/nearly-empty-content-disposition.php: Removed.
  • imported/blink/http/tests/misc/resources/reentrant-beforeunload-helper.html: Removed.
  • imported/blink/http/tests/misc/resources/slow-frame-with-image.php: Removed.
  • imported/blink/http/tests/misc/resources/webtiming-cross-origin-and-back-redirect3.php: Removed.
  • imported/blink/http/tests/plugins/resources: Removed.
  • imported/blink/http/tests/resources/accept-ch.php: Removed.
  • imported/blink/http/tests/resources/dpr.php: Removed.
  • imported/blink/http/tests/resources/iframe-no-accept-ch.php: Removed.
  • imported/blink/http/tests/resources/no-last-modified.php: Removed.
  • imported/blink/http/tests/resources/slow-image-dimensions.php: Removed.
  • imported/blink/http/tests/resources/testharness-helpers.js: Removed.
  • imported/blink/http/tests/resources/testharness.css: Removed.
  • imported/blink/http/tests/resources/tripmine.php: Removed.
  • imported/blink/http/tests/security/contentSecurityPolicy/resources: Removed.
  • imported/blink/http/tests/security/mixedContent/resources: Removed.
  • imported/blink/http/tests/security/mixedContent/websocket/resources: Removed.
  • imported/blink/http/tests/security/resources/conditional-cors.php: Removed.
  • imported/blink/http/tests/security/resources/cors-font.php: Removed.
  • imported/blink/http/tests/security/resources/cors-hello.php: Removed.
  • imported/blink/http/tests/security/resources/cors-redir.php: Removed.
  • imported/blink/http/tests/security/resources/cors-redirect.php: Removed.
  • imported/blink/http/tests/security/resources/cors-style.php: Removed.
  • imported/blink/http/tests/security/resources/cross-origin-iframe-for-shared-worker.html: Removed.
  • imported/blink/http/tests/security/resources/doc-with-iframe.html: Removed.
  • imported/blink/http/tests/security/resources/echo-referrer-header.php: Removed.
  • imported/blink/http/tests/security/resources/green-background-allow-credentials-import.php: Removed.
  • imported/blink/http/tests/security/resources/green-background-allow-credentials.php: Removed.
  • imported/blink/http/tests/security/resources/green-background-allow-star-import.php: Removed.
  • imported/blink/http/tests/security/resources/green-background-allow-star.php: Removed.
  • imported/blink/http/tests/security/resources/green-if-cors-anonymous.php: Removed.
  • imported/blink/http/tests/security/resources/green-if-cors-credentialed.php: Removed.
  • imported/blink/http/tests/security/resources/iframe-crossorigin-script.html: Removed.
  • imported/blink/http/tests/security/resources/iframe-for-naked-global-object.html: Removed.
  • imported/blink/http/tests/security/resources/iframe-for-storage-blocking-changed-shared-worker.html: Removed.
  • imported/blink/http/tests/security/resources/image-wrapper-with-no-image.svg: Removed.
  • imported/blink/http/tests/security/resources/img-basic-auth.php: Removed.
  • imported/blink/http/tests/security/resources/post-origin-to-opener.html: Removed.
  • imported/blink/http/tests/security/resources/postmessage-document-origin.html: Removed.
  • imported/blink/http/tests/security/resources/redir.php: Removed.
  • imported/blink/http/tests/security/resources/referrer-attr-anchor-noreferrer-target.html: Removed.
  • imported/blink/http/tests/security/resources/referrer-attr-anchor-target.html: Removed.
  • imported/blink/http/tests/security/resources/referrer-on-client-redirect.html: Removed.
  • imported/blink/http/tests/security/resources/referrer-policy-conflicting-policies.html: Removed.
  • imported/blink/http/tests/security/resources/referrer-policy-script.php: Removed.
  • imported/blink/http/tests/security/resources/referrer-policy-start-crossorigin.html: Removed.
  • imported/blink/http/tests/security/resources/script-allow-credentials.php: Removed.
  • imported/blink/http/tests/security/resources/script-allow-star.php: Removed.
  • imported/blink/http/tests/security/resources/webaudio: Removed.
  • imported/blink/http/tests/security/resources/xorigincss7.html: Removed.
  • imported/blink/http/tests/svg/resources/delayCachedLoadScript.php: Removed.
  • imported/blink/http/tests/webfont/resources: Removed.
  • imported/blink/http/tests/websocket/resources: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/access-control-basic-post-success-no-content-type.php: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/access-control-preflight-request-header-sorted.php: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/access-control-preflight-request-headers-origin.php: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/access-control-preflight-request-invalid-status.php: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/access-control-preflight-request-must-not-contain-cookie.php: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/access-control-sandboxed-iframe-allow-origin-null-iframe.html: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/echo-random.php: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/echo-request-origin.php: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/frame-with-insecure-xhr.html: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/invalid-utf8-json.pl: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/json-response-overflow.php: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/multiple-send.html: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/navigation-abort-detaches-frame-subframe.html: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/noscript-check.html: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/post-echo.php: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/redirect-cors-origin-null-pass.php: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/redirect-cors-origin-null.php: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/redirect-loop.php: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/request-encoding4-doc.html: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/xmlhttprequest-in-unload-sync.html: Removed.
  • imported/blink/http/tests/xmlhttprequest/resources/xmlhttprequest-no-content-type-with-text.php: Removed.
  • imported/blink/http/tests/xmlhttprequest/workers/resources: Removed.
  • imported/blink/imported/web-platform-tests/screen-orientation/resources: Removed.
  • imported/blink/imported/web-platform-tests/shadow-dom/resources: Removed.
  • imported/blink/imported/web-platform-tests/webstorage/resources: Removed.
  • imported/blink/plugins/resources/empty2.html: Removed.
  • imported/blink/resources: Removed.
  • imported/blink/scrollbars/resources: Removed.
  • imported/blink/svg/animations/resources/animate-fill-freeze-with-repeatDur.svg: Removed.
  • imported/blink/svg/animations/resources/animate-no-matching-end-value.svg: Removed.
  • imported/blink/svg/animations/resources/animateMotion-fill-freeze.svg: Removed.
  • imported/blink/svg/animations/resources/animateMotion-fill-remove.svg: Removed.
  • imported/blink/svg/animations/resources/animateMotion-multiple.svg: Removed.
  • imported/blink/svg/animations/resources/animation-policy.svg: Removed.
  • imported/blink/svg/animations/resources/cyclic-syncbase.svg: Removed.
  • imported/blink/svg/animations/resources/discard-on-discard.svg: Removed.
  • imported/blink/svg/animations/resources/repeatn-remove-add-animation.svg: Removed.
  • imported/blink/svg/animations/resources/viewspec-checkaspectparams.svg: Removed.
  • imported/blink/svg/as-background-image/resources: Removed.
  • imported/blink/svg/as-image/resources/actually-xhtml-with-media.svg: Removed.
  • imported/blink/svg/as-image/resources/animated-rect-color.svg: Removed.
  • imported/blink/svg/as-image/resources/animated-visited-link.svg: Removed.
  • imported/blink/svg/as-image/resources/circle-200px-none.svg: Removed.
  • imported/blink/svg/as-image/resources/css-animation.svg: Removed.
  • imported/blink/svg/as-image/resources/default-font-settings.svg: Removed.
  • imported/blink/svg/as-image/resources/image-with-data-uri.svg: Removed.
  • imported/blink/svg/as-image/resources/image-with-svg-data-uri.svg: Removed.
  • imported/blink/svg/as-image/resources/svg-with-image-with-link.svg: Removed.
  • imported/blink/svg/custom/resources/draw-image-crash.svg: Removed.
  • imported/blink/svg/dom/resources/import-other-svg.svg: Removed.
  • imported/blink/svg/dom/resources/svg-with-animate-use.svg: Removed.
  • imported/blink/svg/dom/resources/svg-with-animate.svg: Removed.
7:17 AM WebKitGTK/2.32.x edited by Adrian Perez de Castro
(diff)
6:52 AM Changeset in webkit [277858] by Adrian Perez de Castro
  • 50 edits in trunk/Source

Non-unified build fixes, late-ish May 2021 edition
https://bugs.webkit.org/show_bug.cgi?id=225990

Unreviewed non-unified build fixes.

Source/JavaScriptCore:

  • jit/CCallHelpers.cpp: Add missing LinkBuffer.h header.

Source/WebCore:

No new tests needed.

  • Modules/indexeddb/server/MemoryObjectStore.cpp: Add missing pal/SessioID.h header.
  • Modules/webaudio/OfflineAudioContext.cpp: Add missing OfflineAudioCompletionEvent.h header.
  • Modules/webaudio/OfflineAudioContext.h: Add missing wtf/UniqueRef.h header.
  • Modules/websockets/WebSocketDeflateFramer.h: Add missing WebSocketExtensionProcessor.h

header, remove wtf/text/WTFString.h as it is already included by the former.

  • bindings/js/JSDOMConvertEnumeration.h: Add missing JSDOMGlobalObject.h header.
  • contentextensions/DFANode.cpp: Add missing wtf/HashMap.h header.
  • html/HTMLFrameElement.cpp: Add missing HTMLParserIdioms.h header.
  • html/HTMLHRElement.cpp: Ditto.
  • html/HTMLIFrameElement.cpp: Ditto.
  • html/HTMLLIElement.cpp: Ditto.
  • html/HTMLMetaElement.cpp: Add missing HTMLParserIdioms.h, Frame.h, and FrameView.h headers.
  • html/HTMLOutputElement.cpp:

(WebCore::HTMLOutputElement::parseAttribute): Add missing HTMLNames:: namespace prefix in
usage of HTMLNames::forAttr.
(WebCore::HTMLOutputElement::htmlFor): Ditto.

  • html/OffscreenCanvas.cpp: Add missing RuntimeEnabledFeatures.h header.
  • layout/formattingContexts/FormattingGeometry.cpp: Add missing FormattingQuirks.h header.
  • layout/formattingContexts/FormattingQuirks.cpp: Add missing FormattingGeometry.h header.
  • layout/formattingContexts/block/BlockFormattingGeometry.cpp: Add missing

BlockFormattingContext.h, BlockFormattingQuirks.h, and BlockMarginCollapse.h headers;
remove unneeded BlockFormattingState.h and FormattingContext.h headers.

  • layout/formattingContexts/block/BlockFormattingGeometry.h: Add missing forward

declaration for BlockFormattingContext.

  • layout/formattingContexts/block/BlockFormattingQuirks.cpp: Add missing

BlockFormattingContext.h and BlockMarginCollapse.h headers, remove unneeded
BlockFormattingState.h header.

  • layout/formattingContexts/block/PrecomputedBlockMarginCollapse.cpp: Add missing

BlockFormattingContext.h and BlockFormattingQuirks.h headers, remove unneeded
BlockFormattingState.h header.

  • layout/formattingContexts/block/tablewrapper/TableWrapperBlockFormattingContext.cpp:

Add missing BlockMarginCollapse.h header.

  • layout/formattingContexts/block/tablewrapper/TableWrapperBlockFormattingQuirks.cpp:

Add missing TableWrapperBlockFormattingContext.h header.

  • layout/formattingContexts/block/tablewrapper/TableWrapperBlockFormattingQuirks.h:

Add missing forward declaration for TableWrapperBlockFormattingContext.

  • layout/formattingContexts/flex/FlexFormattingGeometry.cpp: Add missing

FlexFormattingContext.h header, remove unneeded FlexFormattingState.h and
FormattingContext.h headers.

  • layout/formattingContexts/flex/FlexFormattingGeometry.h: Add missing forward declaration

for FlexFormattingContext.

  • layout/formattingContexts/inline/InlineFormattingGeometry.cpp: Add missing

InlineFormattingContext.h header, remove unneeded InlineLineBox.h header.

  • layout/formattingContexts/inline/InlineFormattingGeometry.h: Add missing InlineLineBox.h

and InlineLineBuilder.h headers, add missing forward declaration for
InlineFormattingContext.

  • layout/formattingContexts/inline/InlineFormattingQuirks.cpp: Add missing

InlineFormattingContext.h header.

  • layout/formattingContexts/inline/InlineFormattingQuirks.h: Add missing InlineLineBox.h

header, add missing forward declaration for InlineFormattingContext.

  • layout/formattingContexts/inline/InlineLineBuilder.cpp: Add missing

InlineFormattingQuirks.h header.

  • layout/formattingContexts/table/TableFormattingGeometry.cpp: Add missing

TableFormattingContext.h header, remove unneeded TableFormattingState.h header.

  • layout/formattingContexts/table/TableFormattingGeometry.h: Add missing TableGrid.h

header, add missing forward declaration for TableFormattingContext.

  • layout/formattingContexts/table/TableFormattingQuirks.cpp: Add missing

TableFormattingContext.h header.

  • layout/formattingContexts/table/TableFormattingQuirks.h: Add missing forward declaration

for TableFormattingContext.

  • layout/formattingContexts/table/TableLayout.cpp: Add missing TableFormattingGeometry.h

header.

  • page/FrameViewLayoutContext.cpp: Add missing StyleScope.h header.
  • page/ImageOverlayController.h: Add missing LayoutRect.h header.
  • page/PageConfiguration.h: Add missing wtf/HashSet.h header.
  • platform/network/soup/SoupNetworkSession.cpp: Add missing wtf/text/StringHash.h header.
  • style/StyleScopeRuleSets.cpp: Add missing StyleScope.h header.
  • style/Styleable.cpp: Ditto.
  • svg/SVGDocumentExtensions.cpp: Add missing SVGUseElement.h header.
  • svg/SVGDocumentExtensions.h: Add missing wtf/WeakHashSet.h header, add missing

forward declaration for SVGUseElement.

  • workers/WorkerGlobalScope.cpp: Add missing FontCustomPlatformData.h header.

Source/WebKit:

  • NetworkProcess/PreconnectTask.h: Add missing forward declaration for NetworkSession.
  • NetworkProcess/WebStorage/LocalStorageDatabase.h: Add missing wtf/HashMap.h header,

remove unneeded wtf/RefCounted.h header.

  • Shared/WebPageCreationParameters.cpp:

(WebKit::WebPageCreationParameters::decode): Add missing WebCore:: namespace prefix to
usage of WebCore::MediaProducer::MutedStateFlags.

6:42 AM Changeset in webkit [277857] by Lauro Moura
  • 4 edits in trunk

[GLIB] fast/canvas/canvas-conic-gradient-angle.html is failing since added in r277547
https://bugs.webkit.org/show_bug.cgi?id=225916

Reviewed by Adrian Perez de Castro.

Source/WebCore:

Covered by existing tests.

In some cases, like negative or large enough "from" angles, the angleStart
variable would fall outside of the 0-360 range, making the center offset
adjust to always fall in the last quadrant instead of the correct one.

This commit normalizes the starting angle to fall between 0-360 when
calculating the quadrant. While it makes the positive "from" angle test
cases to pass, there are still some issues with negative "from", drawing
slightly offset/slanted section borders, likely due to precision issues.

  • platform/graphics/cairo/GradientCairo.cpp:

(WebCore::normalizeAngle): Added helper.
(WebCore::addConicSector): Check quadrant with a normalized (0-360) angle.

LayoutTests:

  • platform/glib/TestExpectations: Unskip and mark as passing to override root dir.
6:11 AM Changeset in webkit [277856] by Alan Bujtas
  • 5 edits
    2 adds in trunk

[LFC][TFC][Quirks] Use box-sizing: border-box when computing cell height
https://bugs.webkit.org/show_bug.cgi?id=226063

Reviewed by Simon Fraser.

Source/WebCore:

Test: fast/layoutformattingcontext/table-simple-quirk-td-height-with-padding.html

  • layout/Verification.cpp:

(WebCore::Layout::LayoutContext::verifyAndOutputMismatchingLayoutTree):

  • layout/formattingContexts/table/TableFormattingContext.cpp:

(WebCore::Layout::TableFormattingContext::layoutCell):

  • layout/formattingContexts/table/TableFormattingGeometry.cpp:

(WebCore::Layout::TableFormattingGeometry::cellBoxContentHeight const):
(WebCore::Layout::TableFormattingGeometry::cellHeigh const): Deleted.

  • layout/formattingContexts/table/TableFormattingGeometry.h:

LayoutTests:

  • fast/layoutformattingcontext/table-simple-quirk-td-height-with-padding-expected.html: Added.
  • fast/layoutformattingcontext/table-simple-quirk-td-height-with-padding.html: Added.
5:23 AM Changeset in webkit [277855] by Chris Lord
  • 2 edits in trunk/Source/WebCore

[GTK] REGRESSION: Broken scrolling on element.io with async scrolling
https://bugs.webkit.org/show_bug.cgi?id=222265

Reviewed by Carlos Garcia Campos.

Fix transform order for layer clipping in TextureMapperLayer.

No new tests.

  • platform/graphics/texmap/TextureMapperLayer.cpp:

(WebCore::TextureMapperLayer::paintSelfAndChildren):

4:48 AM Changeset in webkit [277854] by commit-queue@webkit.org
  • 2 edits in trunk/Source/WebCore

Detect invalid InlinePathData in FillInlinePath
https://bugs.webkit.org/show_bug.cgi?id=225693

Patch by Rob Buis <rbuis@igalia.com> on 2021-05-21
Reviewed by Ryosuke Niwa.

Detect invalid InlinePathData in FillInlinePath.

  • platform/graphics/displaylists/DisplayListItems.h:

(WebCore::DisplayList::InlinePathDataStorage::InlinePathDataStorage):
(WebCore::DisplayList::InlinePathDataStorage::isValid const):
(WebCore::DisplayList::FillInlinePath::FillInlinePath):
(WebCore::DisplayList::FillInlinePath::path const): Deleted.

3:16 AM Changeset in webkit [277853] by Sam Sneddon
  • 65 edits in trunk

Fix Python 3.6+ DeprecationWarnings about unknown escapes
https://bugs.webkit.org/show_bug.cgi?id=226018

Reviewed by Jonathan Bedard.

Fix Python 3.6+ DeprecationWarnings about unknown escapes

PerformanceTests:

  • JetStream2/RAMification.py:
  • JetStream2/RexBench/FlightPlanner/convert-nfdc.py:
  • RexBench/FlightPlanner/convert-nfdc.py:

Source/JavaScriptCore:

  • wasm/generateWasmB3IRGeneratorInlinesHeader.py:

Source/WebCore:

No new tests.

  • Modules/webgpu/WHLSL/WHLSLBuildStandardLibraryFunctionMap.py:

Tools:

  • CISupport/build-webkit-org/loadConfig.py:

(getTagsForBuilder):

  • CISupport/build-webkit-org/steps.py:

(RunGLibAPITests.commandComplete):
(RunWebDriverTests.commandComplete):

  • CISupport/ews-app/ews/common/bugzilla.py:

(BugzillaBeautifulSoup._parse_attachment_ids_request_query):

  • CISupport/ews-app/ews/common/buildbot.py:

(Buildbot._get_display_name_from_builder_name):

  • CISupport/ews-build/loadConfig.py:

(getTagsForBuilder):

  • CISupport/ews-build/steps.py:

(CleanUpGitIndexLock.start):
(FindModifiedLayoutTests):
(BuildLogLineObserver.init):
(PushCommitToWebKitRepo):

  • CISupport/ews-build/steps_unittest.py:
  • Scripts/ic-stats.py:
  • Scripts/libraries/webkitscmpy/webkitscmpy/remote/svn.py:

(Svn):

  • Scripts/webkitpy/common/checkout/changelog.py:

(parse_bug_id_from_changelog):
(ChangeLogEntry):
(update_with_unreviewed_message):
(set_reviewer):

  • Scripts/webkitpy/common/checkout/diff_parser.py:

(git_diff_to_svn_diff):

  • Scripts/webkitpy/common/checkout/diff_test_data.py:
  • Scripts/webkitpy/common/checkout/scm/commitmessage.py:

(_first_non_empty_line_after_index):
(CommitMessage.description):

  • Scripts/webkitpy/common/checkout/scm/git.py:

(Git.commit_success_regexp):
(Git.timestamp_of_revision):
(Git.git_commit_from_svn_revision):

  • Scripts/webkitpy/common/checkout/scm/scm.py:

(SCM.strip_r_from_svn_revision):

  • Scripts/webkitpy/common/checkout/scm/svn.py:

(SVN.commit_success_regexp):
(SVN.revisions_changing_file):

  • Scripts/webkitpy/common/checksvnconfigfile.py:

(check):

  • Scripts/webkitpy/common/config/contributionareas.py:

(ContributionAreas._split_camelcase):

  • Scripts/webkitpy/common/config/urls.py:
  • Scripts/webkitpy/common/find_files_unittest.py:

(TestWinNormalize.assert_filesystem_normalizes):

  • Scripts/webkitpy/common/net/bugzilla/bug.py:

(Bug.commit_revision):

  • Scripts/webkitpy/common/net/bugzilla/bugzilla.py:

(BugzillaQueries._parse_attachment_ids_request_query):
(Bugzilla._parse_bug_id_from_attachment_page):
(Bugzilla._parse_attachment_id_from_add_patch_to_bug_response):
(Bugzilla._check_create_bug_response):

  • Scripts/webkitpy/common/net/buildbot/buildbot.py:

(BuildBot._parse_current_build_cell):

  • Scripts/webkitpy/common/net/credentials.py:

(Credentials._parse_security_tool_output):

  • Scripts/webkitpy/common/net/resultsjsonparser_unittest.py:

(ParsedJSONResultsTest):

  • Scripts/webkitpy/common/system/crashlogs.py:

(CrashLogs.get_timestamp_from_log):

  • Scripts/webkitpy/common/system/crashlogs_unittest.py:
  • Scripts/webkitpy/common/system/platforminfo.py:

(PlatformInfo.available_sdks):

  • Scripts/webkitpy/common/system/user.py:

(User._wait_on_list_response):

  • Scripts/webkitpy/common/watchlist/watchlistparser.py:

(WatchListParser._rule_definitions_as_set):

  • Scripts/webkitpy/layout_tests/models/test_expectations.py:

(TestExpectationParser):
(TestExpectationParser._parse_modifiers):
(TestExpectationParser._tokenize_line):

  • Scripts/webkitpy/performance_tests/perftest.py:

(PerfTest):

  • Scripts/webkitpy/port/base.py:

(Port._natural_sort_key):

  • Scripts/webkitpy/port/driver.py:

(DriverOutput):
(Driver._check_for_driver_timeout):
(Driver._check_for_driver_crash_or_unresponsiveness):

  • Scripts/webkitpy/port/image_diff.py:

(ImageDiffer._read):

  • Scripts/webkitpy/port/win.py:

(WinPort.write_registry_value):

  • Scripts/webkitpy/pytest.ini:
  • Scripts/webkitpy/style/checker.py:

(CheckerDispatcher._should_skip_file_path):

  • Scripts/webkitpy/style/checkers/changelog.py:

(ChangeLogChecker.check_entry):

  • Scripts/webkitpy/style/checkers/cmake.py:

(CMakeChecker._process_line):
(CMakeChecker._check_no_space_cmds):
(CMakeChecker._check_one_space_cmds):
(CMakeChecker._check_non_lowercase_cmd):
(CMakeChecker._check_list_order):

  • Scripts/webkitpy/style/checkers/cpp.py:

(FileInfo.repository_name):
(check_for_non_standard_constructs):
(check_spacing):
(check_language):

  • Scripts/webkitpy/style/checkers/cpp_unittest.py:
  • Scripts/webkitpy/style/checkers/jstest.py:

(map_functions_to_dict):
(strip_trailing_blank_lines_and_comments):

  • Scripts/webkitpy/style/checkers/messagesin.py:

(MessagesInChecker.check_WTF_prefix):

  • Scripts/webkitpy/style/patchreader.py:

(PatchReader.check):

  • Scripts/webkitpy/test/runner.py:
  • Scripts/webkitpy/test/runner_unittest.py:

(FakeLoader.init):

  • Scripts/webkitpy/tool/commands/analyzechangelog.py:

(AnalyzeChangeLog._enumerate_changelogs):

  • Scripts/webkitpy/tool/commands/queries.py:

(PrintBaselines.init):
(FindResolvedBugs.execute):

  • Scripts/webkitpy/tool/commands/upload.py:

(MarkBugFixed._determine_bug_id_and_svn_revision):

  • Scripts/webkitpy/tool/steps/promptforbugortitle.py:

(PromptForBugOrTitle.run):

  • Scripts/webkitpy/w3c/test_converter.py:

(_W3CTestConverter.init):
(_W3CTestConverter.read_webkit_prefixed_css_property_list):
(_W3CTestConverter.legacy_read_webkit_prefixed_css_property_list):

  • Scripts/webkitpy/w3c/test_parser.py:

(TestParser.support_files):

  • lldb/lldb_dump_class_layout.py:

(LLDBDebuggerInstance._get_first_file_architecture):

Websites/browserbench.org:

  • JetStream2.0/RexBench/FlightPlanner/convert-nfdc.py:
2:53 AM Changeset in webkit [277852] by youenn@apple.com
  • 18 edits
    7 adds in trunk/Source

Implement a remote Internal Unit in GPUProcess for audio MediaStreamTrack rendering
https://bugs.webkit.org/show_bug.cgi?id=225603
Source/WebCore:

<rdar://problem/78114391>

Reviewed by Eric Carlson.

Fixed the case where we were calling start even though a source was already being played.
This is more consistent since we are doing those checks for stop.
Reduce the code where we lock sources to the minimum.

In case we want to lock the sources copy in audio thread and we fail, continue rendering audio instead of dropping everything.
Add some main thread assertions in AudioMediaStreamTrackRendererUnit methods.

Manually tested.

  • platform/mediastream/cocoa/AudioMediaStreamTrackRendererUnit.cpp:

(WebCore::AudioMediaStreamTrackRendererUnit::addSource):
(WebCore::AudioMediaStreamTrackRendererUnit::removeSource):
(WebCore::AudioMediaStreamTrackRendererUnit::render):

Source/WebKit:

Reviewed by Eric Carlson.

Implement an InternalUnit by creating a ring buffer that gets written on WebProcess and read on GPUProcess by an audio unit.
In the previous implementation, each audio track was sent to GPUProcess that was doing the mixing.
Sending was done by sending IPC message for each audio sample, which was also processing inefficient.

We are now creating an Audio Unit in GPUProcess and similarly to WebAudio asking WebProcess to render audio in a buffer that will be actually rendered by the audio unit.
The mixing happens in WebProcess so only one buffer is shared between GPUProcess and WebProcess, and no IPC message is sent for each chunk.

The potential downside is that the mixing is done with fixed chunk size instead of chunk size requested by the audio unit.
This might trigger some latency or some overhead if the fixed chunk size is too far from what the audio unit is asking.

In case of GPUProcess crash, we keep the same format description but we delay recreation of the unit if the unit is stopped.

  • DerivedSources-input.xcfilelist:
  • DerivedSources-output.xcfilelist:
  • DerivedSources.make:
  • GPUProcess/GPUConnectionToWebProcess.cpp:

(WebKit::GPUConnectionToWebProcess::audioMediaStreamTrackRendererInternalUnitManager):
(WebKit::GPUConnectionToWebProcess::dispatchMessage):

  • GPUProcess/GPUConnectionToWebProcess.h:
  • GPUProcess/webrtc/RemoteAudioMediaStreamTrackRenderer.cpp:

(WebKit::RemoteAudioMediaStreamTrackRenderer::start):

  • GPUProcess/webrtc/RemoteAudioMediaStreamTrackRendererInternalUnitManager.cpp: Added.

(WebKit::RemoteAudioMediaStreamTrackRendererInternalUnitManager::RemoteAudioMediaStreamTrackRendererInternalUnitManager):
(WebKit::RemoteAudioMediaStreamTrackRendererInternalUnitManager::~RemoteAudioMediaStreamTrackRendererInternalUnitManager):
(WebKit::RemoteAudioMediaStreamTrackRendererInternalUnitManager::createUnit):
(WebKit::RemoteAudioMediaStreamTrackRendererInternalUnitManager::deleteUnit):
(WebKit::RemoteAudioMediaStreamTrackRendererInternalUnitManager::startUnit):
(WebKit::RemoteAudioMediaStreamTrackRendererInternalUnitManager::stopUnit):
(WebKit::RemoteAudioMediaStreamTrackRendererInternalUnitManager::setAudioOutputDevice):
(WebKit::renderCallback):
(WebKit::RemoteAudioMediaStreamTrackRendererInternalUnitManager::Unit::Unit):
(WebKit::RemoteAudioMediaStreamTrackRendererInternalUnitManager::Unit::~Unit):
(WebKit::RemoteAudioMediaStreamTrackRendererInternalUnitManager::Unit::start):
(WebKit::RemoteAudioMediaStreamTrackRendererInternalUnitManager::Unit::stop):
(WebKit::RemoteAudioMediaStreamTrackRendererInternalUnitManager::Unit::setAudioOutputDevice):
(WebKit::RemoteAudioMediaStreamTrackRendererInternalUnitManager::Unit::render):

  • GPUProcess/webrtc/RemoteAudioMediaStreamTrackRendererInternalUnitManager.h: Added.
  • GPUProcess/webrtc/RemoteAudioMediaStreamTrackRendererInternalUnitManager.messages.in: Added.
  • Scripts/webkit/messages.py:

(types_that_cannot_be_forward_declared):

  • Sources.txt:
  • SourcesCocoa.txt:
  • WebKit.xcodeproj/project.pbxproj:
  • WebProcess/GPU/GPUProcessConnection.h:
  • WebProcess/GPU/webrtc/AudioMediaStreamTrackRenderer.cpp:

(WebKit::AudioMediaStreamTrackRenderer::start):

  • WebProcess/GPU/webrtc/AudioMediaStreamTrackRenderer.h:
  • WebProcess/GPU/webrtc/AudioMediaStreamTrackRendererInternalUnitIdentifier.h: Added.
  • WebProcess/GPU/webrtc/AudioMediaStreamTrackRendererInternalUnitManager.cpp: Added.

(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::add):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::remove):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::createRemoteInternalUnit):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::gpuProcessConnectionClosed):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::Proxy::Proxy):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::Proxy::~Proxy):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::Proxy::createRemoteUnit):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::Proxy::initialize):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::Proxy::start):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::Proxy::storageChanged):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::Proxy::stop):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::Proxy::setAudioOutputDevice):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::Proxy::retrieveFormatDescription):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::Proxy::stopThread):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::Proxy::startThread):
(WebKit::AudioMediaStreamTrackRendererInternalUnitManager::Proxy::restartIfNeeded):

  • WebProcess/GPU/webrtc/AudioMediaStreamTrackRendererInternalUnitManager.h: Added.
  • WebProcess/GPU/webrtc/AudioMediaStreamTrackRendererInternalUnitManager.messages.in: Added.
  • WebProcess/WebProcess.cpp:

(WebKit::WebProcess::audioMediaStreamTrackRendererInternalUnitManager):

  • WebProcess/WebProcess.h:
  • WebProcess/cocoa/UserMediaCaptureManager.cpp:

(WebKit::UserMediaCaptureManager::setupCaptureProcesses):

2:31 AM Changeset in webkit [277851] by Angelos Oikonomopoulos
  • 2 edits in trunk/JSTests

Unskip type-check-hoisting-phase-hoist-check-structure-on-tdz-this-value on MIPS
https://bugs.webkit.org/show_bug.cgi?id=226011

Unreviewed gardening.

Appears to no longer be flaky.

  • stress/type-check-hoisting-phase-hoist-check-structure-on-tdz-this-value.js:
Note: See TracTimeline for information about the timeline view.