[webkit-changes] [WebKit/WebKit] 7c2599: Weak data types should not hard code WeakPtrFactory

geoffreygaren noreply at github.com
Tue Sep 24 09:20:53 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 7c2599f8defb332d27a04e95dc5eca101af4042e
      https://github.com/WebKit/WebKit/commit/7c2599f8defb332d27a04e95dc5eca101af4042e
  Author: Geoffrey Garen <ggaren at apple.com>
  Date:   2024-09-24 (Tue, 24 Sep 2024)

  Changed paths:
    M Source/WTF/wtf/CanMakeWeakPtr.h
    M Source/WTF/wtf/StdLibExtras.h
    M Source/WTF/wtf/WeakHashMap.h
    M Source/WTF/wtf/WeakHashSet.h
    M Source/WTF/wtf/WeakListHashSet.h
    M Source/WTF/wtf/WeakPtr.h
    M Source/WTF/wtf/WeakPtrFactory.h
    M Source/WTF/wtf/WeakRef.h
    M Source/WebCore/Modules/cookie-store/CookieStore.h
    M Source/WebCore/Modules/encryptedmedia/MediaKeySession.h
    M Source/WebCore/Modules/mediacontrols/MediaControlsHost.h
    M Source/WebCore/Modules/mediarecorder/MediaRecorder.h
    M Source/WebCore/Modules/mediasession/MediaSessionCoordinator.h
    M Source/WebCore/Modules/mediasource/MediaSource.h
    M Source/WebCore/Modules/mediasource/SourceBuffer.h
    M Source/WebCore/Modules/mediastream/MediaStream.h
    M Source/WebCore/Modules/model-element/HTMLModelElement.h
    M Source/WebCore/Modules/speech/SpeechRecognition.h
    M Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.h
    M Source/WebCore/Modules/webxr/WebXRSession.h
    M Source/WebCore/css/CSSFontSelector.h
    M Source/WebCore/dom/Document.h
    M Source/WebCore/dom/ProcessingInstruction.h
    M Source/WebCore/html/HTMLLinkElement.h
    M Source/WebCore/html/HTMLMediaElement.h
    M Source/WebCore/html/HTMLTrackElement.h
    M Source/WebCore/html/canvas/WebGLRenderingContextBase.h
    M Source/WebCore/html/shadow/SpinButtonElement.h
    M Source/WebCore/loader/DocumentLoader.h
    M Source/WebCore/page/EventSource.h
    M Source/WebCore/page/ScreenOrientation.h
    M Source/WebCore/platform/ScrollView.h
    M Source/WebCore/platform/audio/AudioSession.h
    M Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.h
    M Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.h
    M Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h
    M Source/WebCore/platform/mediastream/RealtimeOutgoingVideoSource.h
    M Source/WebCore/workers/Worker.h
    M Source/WebCore/workers/WorkerGlobalScope.h
    M Source/WebCore/workers/WorkerOrWorkletGlobalScope.h
    M Source/WebKit/GPUProcess/GPUConnectionToWebProcess.h
    M Source/WebKit/GPUProcess/mac/LocalAudioSessionRoutingArbitrator.h
    M Source/WebKit/GPUProcess/media/RemoteAudioSessionProxyManager.h
    M Source/WebKit/GPUProcess/media/RemoteCDMInstanceProxy.h
    M Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.h
    M Source/WebKit/GPUProcess/webrtc/RemoteAudioMediaStreamTrackRendererInternalUnitManager.cpp
    M Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.h
    M Source/WebKit/ModelProcess/ModelConnectionToWebProcess.h
    M Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.h
    M Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.h
    M Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerToContextConnection.h
    M Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm
    M Source/WebKit/UIProcess/AuxiliaryProcessProxy.h
    M Source/WebKit/UIProcess/Cocoa/PlaybackSessionManagerProxy.h
    M Source/WebKit/UIProcess/Cocoa/VideoPresentationManagerProxy.h
    M Source/WebKit/UIProcess/Media/RemoteMediaSessionCoordinatorProxy.h
    M Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.h
    M Source/WebKit/UIProcess/WebPageProxy.h
    M Source/WebKit/UIProcess/WebProcessPool.h
    M Source/WebKit/UIProcess/XR/PlatformXRSystem.h
    M Source/WebKit/WebProcess/MediaStream/UserMediaPermissionRequestManager.h
    M Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.h
    M Source/WebKit/WebProcess/cocoa/AudioSessionRoutingArbitrator.h
    M Source/WebKit/WebProcess/cocoa/VideoPresentationManager.h
    M Tools/TestWebKitAPI/Tests/WTF/WeakPtr.cpp

  Log Message:
  -----------
  Weak data types should not hard code WeakPtrFactory
https://bugs.webkit.org/show_bug.cgi?id=280131
rdar://136431404

Reviewed by Ryosuke Niwa.

This is work toward implementing a more efficient weak pointer.

* Source/WTF/wtf/CanMakeWeakPtr.h:
(WTF::CanMakeWeakPtrBase::weakImplIfExists const):
(WTF::CanMakeWeakPtrBase::weakImpl const):
(WTF::CanMakeWeakPtrBase::initializeWeakPtrFactory const):
(WTF::CanMakeWeakPtrBase::weakPtrFactory const): Deleted.
(WTF::CanMakeWeakPtrBase::weakPtrFactory): Deleted.
(WTF::CanMakeWeakPtrBase::initializeWeakPtrFactory): Deleted.
* Source/WTF/wtf/StdLibExtras.h:
* Source/WTF/wtf/WeakHashMap.h:
* Source/WTF/wtf/WeakHashSet.h:
* Source/WTF/wtf/WeakListHashSet.h:
* Source/WTF/wtf/WeakPtr.h:
(WTF::WeakPtr::WeakPtr):
(WTF::WeakPtr::implForObject): Deleted.
* Source/WTF/wtf/WeakPtrFactory.h:
* Source/WTF/wtf/WeakRef.h:
(WTF::WeakRef::WeakRef):
(WTF::WeakRef::implForObject): Deleted.
* Source/WebCore/Modules/cookie-store/CookieStore.h:
* Source/WebCore/Modules/encryptedmedia/MediaKeySession.h:
* Source/WebCore/Modules/mediacontrols/MediaControlsHost.h:
* Source/WebCore/Modules/mediarecorder/MediaRecorder.h:
* Source/WebCore/Modules/mediasession/MediaSessionCoordinator.h:
* Source/WebCore/Modules/mediasource/MediaSource.h:
* Source/WebCore/Modules/mediasource/SourceBuffer.h:
* Source/WebCore/Modules/mediastream/MediaStream.h:
* Source/WebCore/Modules/model-element/HTMLModelElement.h:
* Source/WebCore/Modules/speech/SpeechRecognition.h:
* Source/WebCore/Modules/webaudio/MediaElementAudioSourceNode.h:
* Source/WebCore/Modules/webxr/WebXRSession.h:
* Source/WebCore/css/CSSFontSelector.h:
* Source/WebCore/dom/Document.h:
* Source/WebCore/dom/ProcessingInstruction.h:
* Source/WebCore/html/HTMLLinkElement.h:
* Source/WebCore/html/HTMLMediaElement.h:
* Source/WebCore/html/HTMLTrackElement.h:
* Source/WebCore/html/canvas/WebGLRenderingContextBase.h:
* Source/WebCore/html/shadow/SpinButtonElement.h:
* Source/WebCore/loader/DocumentLoader.h:
* Source/WebCore/page/EventSource.h:
* Source/WebCore/page/ScreenOrientation.h:
* Source/WebCore/platform/ScrollView.h:
* Source/WebCore/platform/audio/AudioSession.h:
* Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.h:
* Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.h:
* Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h:
* Source/WebCore/platform/mediastream/RealtimeOutgoingVideoSource.h:
* Source/WebCore/workers/Worker.h:
* Source/WebCore/workers/WorkerGlobalScope.h:
* Source/WebCore/workers/WorkerOrWorkletGlobalScope.h:
* Source/WebKit/GPUProcess/GPUConnectionToWebProcess.h:
* Source/WebKit/GPUProcess/mac/LocalAudioSessionRoutingArbitrator.h:
* Source/WebKit/GPUProcess/media/RemoteAudioSessionProxyManager.h:
* Source/WebKit/GPUProcess/media/RemoteCDMInstanceProxy.h:
* Source/WebKit/GPUProcess/media/RemoteMediaPlayerProxy.h:
* Source/WebKit/GPUProcess/webrtc/RemoteAudioMediaStreamTrackRendererInternalUnitManager.cpp:
* Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.h:
* Source/WebKit/ModelProcess/ModelConnectionToWebProcess.h:
* Source/WebKit/NetworkProcess/NetworkConnectionToWebProcess.h:
* Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerConnection.h:
* Source/WebKit/NetworkProcess/ServiceWorker/WebSWServerToContextConnection.h:
* Source/WebKit/UIProcess/API/Cocoa/WKWebViewTesting.mm:
(-[WKWebView _createMediaSessionCoordinatorForTesting:completionHandler:]):
* Source/WebKit/UIProcess/AuxiliaryProcessProxy.h:
* Source/WebKit/UIProcess/Cocoa/PlaybackSessionManagerProxy.h:
* Source/WebKit/UIProcess/Cocoa/VideoPresentationManagerProxy.h:
* Source/WebKit/UIProcess/Media/RemoteMediaSessionCoordinatorProxy.h:
* Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.h:
* Source/WebKit/UIProcess/WebPageProxy.h:
* Source/WebKit/UIProcess/WebProcessPool.h:
* Source/WebKit/UIProcess/XR/PlatformXRSystem.h:
* Source/WebKit/WebProcess/MediaStream/UserMediaPermissionRequestManager.h:
* Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.h:
* Source/WebKit/WebProcess/cocoa/AudioSessionRoutingArbitrator.h:
* Source/WebKit/WebProcess/cocoa/VideoPresentationManager.h:

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



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


More information about the webkit-changes mailing list