Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7d6d7706aac8f42283407f23864443ce5ef4d2e4
      
https://github.com/WebKit/WebKit/commit/7d6d7706aac8f42283407f23864443ce5ef4d2e4
  Author: Chris Dumez <[email protected]>
  Date:   2026-03-01 (Sun, 01 Mar 2026)

  Changed paths:
    M Source/WTF/wtf/CanMakeWeakPtr.h
    M Source/WTF/wtf/CheckedPtr.h
    M Source/WTF/wtf/CheckedRef.h
    M Source/WTF/wtf/FastBitVector.h
    M Source/WTF/wtf/IndexSet.h
    M Source/WTF/wtf/IndexSparseSet.h
    M Source/WTF/wtf/Liveness.h
    M Source/WTF/wtf/Markable.h
    M Source/WTF/wtf/MediaTime.h
    M Source/WTF/wtf/NativePromise.h
    M Source/WTF/wtf/NaturalLoops.h
    M Source/WTF/wtf/ParallelHelperPool.h
    M Source/WTF/wtf/Ref.h
    M Source/WTF/wtf/RefPtr.h
    M Source/WTF/wtf/RetainPtr.h
    M Source/WTF/wtf/RunLoop.h
    M Source/WTF/wtf/SequesteredImmortalHeap.h
    M Source/WTF/wtf/Spectrum.h
    M Source/WTF/wtf/StackTrace.h
    M Source/WTF/wtf/ThreadGroup.h
    M Source/WTF/wtf/Threading.h
    M Source/WTF/wtf/ThreadingPrimitives.h
    M Source/WTF/wtf/WeakPtrFactory.h
    M Source/WTF/wtf/text/AtomStringTable.h
    M Source/WTF/wtf/text/SymbolImpl.h
    M Source/WTF/wtf/text/TextBreakIterator.h
    M Source/WebCore/editing/TextIterator.cpp
    M Source/WebCore/editing/TextIterator.h
    M Source/WebCore/layout/formattingContexts/block/BlockFormattingContext.cpp
    M Source/WebCore/rendering/RenderTextFragment.cpp
    M Source/WebCore/rendering/RenderTextFragment.h
    M Source/WebCore/rendering/TextAutoSizing.cpp
    M Source/WebCore/rendering/updating/RenderTreeBuilder.cpp
    M Source/WebCore/rendering/updating/RenderTreeBuilderRuby.cpp
    M Source/WebCore/rendering/updating/RenderTreeBuilderRuby.h
    M Source/WebGPU/WebGPU/RenderPassEncoder.mm
    M Source/WebKit/NetworkProcess/NetworkLoadChecker.cpp
    M Source/WebKit/NetworkProcess/NetworkLoadChecker.h
    M Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm
    M Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h
    M Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm
    M Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp
    M Source/WebKit/NetworkProcess/storage/NetworkStorageManager.h
    M Source/WebKit/UIProcess/API/APINavigation.cpp
    M Source/WebKit/UIProcess/Cocoa/VideoPresentationManagerProxy.mm
    M Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.mm
    M Source/WebKit/UIProcess/RemotePageProxy.cpp
    M Source/WebKit/WebProcess/Automation/WebAutomationSessionProxy.cpp
    M 
Source/WebKit/WebProcess/EncryptedMedia/MediaKeySystemPermissionRequestManager.cpp
    M Source/WebKit/WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp
    M Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp
    M 
Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/PDFDataDetectorOverlayController.mm
    M Source/WebKit/WebProcess/Plugins/PluginView.cpp
    M Source/WebKit/WebProcess/UserContent/WebUserContentController.cpp
    M Source/WebKit/WebProcess/WebAuthentication/WebAuthenticatorCoordinator.cpp
    M Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp
    M Source/WebKit/WebProcess/WebCoreSupport/WebEditorClient.cpp
    M Source/WebKit/WebProcess/WebCoreSupport/WebLocalFrameLoaderClient.cpp
    M Source/WebKit/WebProcess/WebPage/Cocoa/PositionInformationForWebPage.mm
    M Source/WebKit/WebProcess/WebPage/FindController.cpp
    M Source/WebKit/WebProcess/WebPage/WebFrame.cpp
    M Source/WebKit/WebProcess/WebPage/WebFrame.h
    M Source/WebKit/WebProcess/WebPage/WebPage.cpp
    M Source/WebKit/WebProcess/WebProcess.cpp

  Log Message:
  -----------
  Adopt `LIFETIME_BOUND` annotation in more places in Source/WTF
https://bugs.webkit.org/show_bug.cgi?id=308920

Reviewed by Darin Adler.

In particular, the missing `LIFETIME_BOUND` on CheckedRef are particularly
important. We somehow missed CheckedRef when we did the adoption on smart
pointers.

Also improve the build error message when calling protect() unnecessarily
on a RetainPtr&&. Also extend this technique to generate a build error
when calling protect() on a RefPtr&&, Ref&&, CheckedPtr&& or CheckedPtr&&.

* Source/WTF/wtf/CanMakeWeakPtr.h:
(WTF::CanMakeWeakPtrBase::weakPtrFactory const): Deleted.
(WTF::CanMakeWeakPtrBase::weakPtrFactory): Deleted.
* Source/WTF/wtf/CheckedPtr.h:
(WTF::protect):
* Source/WTF/wtf/CheckedRef.h:
(WTF::protect):
(WTF::CheckedRef::ptr const): Deleted.
(WTF::CheckedRef::get const): Deleted.
(WTF::CheckedRef::operator-> const): Deleted.
(WTF::CheckedRef::operator T& const): Deleted.
* Source/WTF/wtf/FastBitVector.h:
(WTF::FastBitVectorWordOwner::word): Deleted.
(WTF::FastBitVectorImpl::unsafeWords): Deleted.
(WTF::FastBitVectorImpl::unsafeWords const): Deleted.
* Source/WTF/wtf/IndexSet.h:
(WTF::IndexSet::indices const): Deleted.
* Source/WTF/wtf/IndexSparseSet.h:
* Source/WTF/wtf/Liveness.h:
(WTF::Liveness::workset): Deleted.
* Source/WTF/wtf/Markable.h:
(WTF::Markable::value const): Deleted.
(WTF::Markable::unsafeValue const): Deleted.
(WTF::Markable::operator-> const): Deleted.
(WTF::Markable::operator->): Deleted.
(WTF::Markable::operator* const): Deleted.
(WTF::Markable::operator*): Deleted.
* Source/WTF/wtf/MediaTime.h:
* Source/WTF/wtf/NativePromise.h:
* Source/WTF/wtf/NaturalLoops.h:
(WTF::NaturalLoops::graph): Deleted.
* Source/WTF/wtf/ParallelHelperPool.h:
(WTF::ParallelHelperClient::pool): Deleted.
* Source/WTF/wtf/Ref.h:
(WTF::protect):
* Source/WTF/wtf/RefPtr.h:
(WTF::protect):
* Source/WTF/wtf/RetainPtr.h:
(WTF::protect):
* Source/WTF/wtf/RunLoop.h:
* Source/WTF/wtf/SequesteredImmortalHeap.h:
* Source/WTF/wtf/Spectrum.h:
(WTF::Spectrum::getLock): Deleted.
* Source/WTF/wtf/StackTrace.h:
(WTF::StackTraceSymbolResolver::DemangleEntry::demangledName const): Deleted.
* Source/WTF/wtf/ThreadGroup.h:
* Source/WTF/wtf/Threading.h:
* Source/WTF/wtf/ThreadingPrimitives.h:
* Source/WTF/wtf/WeakPtrFactory.h:
(WTF::WeakPtrFactory::impl const): Deleted.
(WTF::WeakPtrFactoryWithBitField::impl const): Deleted.
* Source/WTF/wtf/text/AtomStringTable.h:
(WTF::AtomStringTable::table): Deleted.
* Source/WTF/wtf/text/SymbolImpl.h:
* Source/WTF/wtf/text/TextBreakIterator.h:
(WTF::TextBreakIterator::locale const): Deleted.
(WTF::CachedLineBreakIteratorFactory::get): Deleted.
(WTF::CachedLineBreakIteratorFactory::priorContext const): Deleted.
(WTF::CachedLineBreakIteratorFactory::priorContext): Deleted.
* Source/WebCore/editing/TextIterator.cpp:
(WebCore::SimplifiedBackwardsTextIterator::handleFirstLetter):
* Source/WebCore/editing/TextIterator.h:
* Source/WebCore/layout/formattingContexts/block/BlockFormattingContext.cpp:
(WebCore::Layout::BlockFormattingContext::collectOutOfFlowDescendantsIfNeeded):
* Source/WebCore/rendering/RenderTextFragment.cpp:
(WebCore::RenderTextFragment::blockForAccompanyingFirstLetter):
* Source/WebCore/rendering/RenderTextFragment.h:
* Source/WebCore/rendering/TextAutoSizing.cpp:
(WebCore::TextAutoSizingValue::adjustTextNodeSizes):
* Source/WebCore/rendering/updating/RenderTreeBuilder.cpp:
(WebCore::RenderTreeBuilder::attachInternal):
(WebCore::RenderTreeBuilder::moveChildren):
* Source/WebCore/rendering/updating/RenderTreeBuilderRuby.cpp:
(WebCore::RenderTreeBuilder::Ruby::findOrCreateParentForStyleBasedRubyChild):
* Source/WebCore/rendering/updating/RenderTreeBuilderRuby.h:
* Source/WebGPU/WebGPU/RenderPassEncoder.mm:
(WebGPU::RenderPassEncoder::executeBundles):
* Source/WebKit/NetworkProcess/NetworkLoadChecker.h:
(WebKit::NetworkLoadChecker::origin const):
(WebKit::NetworkLoadChecker::topOrigin const):
* Source/WebKit/NetworkProcess/cocoa/NetworkDataTaskCocoa.mm:
(WebKit::NetworkDataTaskCocoa::NetworkDataTaskCocoa):
* Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h:
* Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.mm:
(WebKit::NetworkSessionCocoa::sessionWrapperForTask):
(WebKit::NetworkSessionCocoa::isolatedSession):
(WebKit::SessionSet::isolatedSession):
(WebKit::NetworkSessionCocoa::dataTaskWithRequest):
* Source/WebKit/NetworkProcess/storage/NetworkStorageManager.cpp:
(WebKit::NetworkStorageManager::donePrepareForEviction):
(WebKit::NetworkStorageManager::performEviction):
(WebKit::NetworkStorageManager::originStorageManager):
(WebKit::NetworkStorageManager::estimate):
(WebKit::NetworkStorageManager::fetchSessionStorageForWebPage):
(WebKit::NetworkStorageManager::restoreSessionStorageForWebPage):
(WebKit::NetworkStorageManager::fileSystemGetDirectory):
(WebKit::NetworkStorageManager::fetchDataFromDisk):
(WebKit::NetworkStorageManager::moveData):
(WebKit::NetworkStorageManager::getOriginDirectory):
(WebKit::NetworkStorageManager::fetchLocalStorage):
(WebKit::NetworkStorageManager::restoreLocalStorage):
(WebKit::NetworkStorageManager::requestSpace):
(WebKit::NetworkStorageManager::openDatabase):
(WebKit::NetworkStorageManager::openDBRequestCancelled):
(WebKit::NetworkStorageManager::deleteDatabase):
(WebKit::NetworkStorageManager::databaseConnectionClosed):
(WebKit::NetworkStorageManager::getAllDatabaseNamesAndVersions):
(WebKit::NetworkStorageManager::cacheStorageOpenCache):
(WebKit::NetworkStorageManager::cacheStorageAllCaches):
(WebKit::NetworkStorageManager::lockCacheStorage):
(WebKit::NetworkStorageManager::unlockCacheStorage):
(WebKit::NetworkStorageManager::dispatchTaskToBackgroundFetchManager):
(WebKit::NetworkStorageManager::clearServiceWorkerRegistrations):
(WebKit::NetworkStorageManager::importServiceWorkerRegistrations):
(WebKit::NetworkStorageManager::updateServiceWorkerRegistrationsByOrigin):
(WebKit::NetworkStorageManager::queryCacheStorage):
* Source/WebKit/NetworkProcess/storage/NetworkStorageManager.h:
* Source/WebKit/UIProcess/API/APINavigation.cpp:
(API::Navigation::Navigation):
* Source/WebKit/UIProcess/Cocoa/VideoPresentationManagerProxy.mm:
(WebKit::VideoPresentationManagerProxy::audioSessionCategoryChanged):
(WebKit::VideoPresentationManagerProxy::routingContextUIDChanged):
* Source/WebKit/UIProcess/RemotePageProxy.cpp:
(WebKit::RemotePageProxy::injectPageIntoNewProcess):
* Source/WebKit/WebProcess/Automation/WebAutomationSessionProxy.cpp:
(WebKit::WebAutomationSessionProxy::resolveChildFrameWithOrdinal):
(WebKit::WebAutomationSessionProxy::resolveChildFrameWithNodeHandle):
(WebKit::WebAutomationSessionProxy::resolveChildFrameWithName):
* 
Source/WebKit/WebProcess/EncryptedMedia/MediaKeySystemPermissionRequestManager.cpp:
(WebKit::MediaKeySystemPermissionRequestManager::sendMediaKeySystemRequest):
* Source/WebKit/WebProcess/MediaStream/UserMediaPermissionRequestManager.cpp:
(WebKit::UserMediaPermissionRequestManager::sendUserMediaRequest):
* Source/WebKit/WebProcess/Network/WebLoaderStrategy.cpp:
(WebKit::WebLoaderStrategy::startPingLoad):
* 
Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/PDFDataDetectorOverlayController.mm:
(WebKit::PDFDataDetectorOverlayController::installProtectedOverlayIfNeeded):
* Source/WebKit/WebProcess/UserContent/WebUserContentController.cpp:
* Source/WebKit/WebProcess/WebAuthentication/WebAuthenticatorCoordinator.cpp:
(WebKit::WebAuthenticatorCoordinator::makeCredential):
(WebKit::WebAuthenticatorCoordinator::getAssertion):
* Source/WebKit/WebProcess/WebCoreSupport/WebChromeClient.cpp:
(WebKit::WebChromeClient::runBeforeUnloadConfirmPanel):
(WebKit::WebChromeClient::runJavaScriptAlert):
(WebKit::WebChromeClient::runJavaScriptConfirm):
(WebKit::WebChromeClient::runJavaScriptPrompt):
(WebKit::WebChromeClient::print):
(WebKit::WebChromeClient::runOpenPanel):
(WebKit::WebChromeClient::didAssociateFormControls):
(WebKit::WebChromeClient::hasStorageAccess):
(WebKit::WebChromeClient::requestStorageAccess):
(WebKit::WebChromeClient::shouldAllowDeviceOrientationAndMotionAccess):
* Source/WebKit/WebProcess/WebCoreSupport/WebEditorClient.cpp:
(WebKit::WebEditorClient::textFieldDidEndEditing):
(WebKit::WebEditorClient::textDidChangeInTextField):
(WebKit::WebEditorClient::textDidChangeInTextArea):
(WebKit::WebEditorClient::doTextFieldCommandFromEvent):
(WebKit::WebEditorClient::textWillBeDeletedInTextField):
* Source/WebKit/WebProcess/WebCoreSupport/WebLocalFrameLoaderClient.cpp:
(WebKit::WebLocalFrameLoaderClient::dispatchWillSendSubmitEvent):
(WebKit::WebLocalFrameLoaderClient::dispatchWillSubmitForm):
* Source/WebKit/WebProcess/WebPage/Cocoa/PositionInformationForWebPage.mm:
(WebKit::positionInformationForWebPage):
* Source/WebKit/WebProcess/WebPage/FindController.cpp:
(WebKit::FindController::getImageForFindMatch):
* Source/WebKit/WebProcess/WebPage/WebFrame.cpp:
(WebKit::WebFrame::fromCoreFrame):
* Source/WebKit/WebProcess/WebPage/WebFrame.h:
* Source/WebKit/WebProcess/WebProcess.cpp:
(WebKit::WebProcess::setAppBadge):

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications

Reply via email to