[webkit-changes] [WebKit/WebKit] c13321: Added a compile time assertion that forbids classe...
geoffreygaren
noreply at github.com
Wed May 1 13:15:23 PDT 2024
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: c13321a96e1de0debe0e734a4b092001b22854aa
https://github.com/WebKit/WebKit/commit/c13321a96e1de0debe0e734a4b092001b22854aa
Author: Geoffrey Garen <ggaren at apple.com>
Date: 2024-05-01 (Wed, 01 May 2024)
Changed paths:
M Source/JavaScriptCore/inspector/InspectorTarget.h
M Source/JavaScriptCore/runtime/ConsoleClient.h
M Source/JavaScriptCore/runtime/JSGlobalObject.cpp
M Source/JavaScriptCore/runtime/JSGlobalObject.h
M Source/WTF/wtf/CancellableTask.h
M Source/WTF/wtf/ListHashSet.h
M Source/WTF/wtf/NativePromise.h
M Source/WTF/wtf/Observer.h
M Source/WTF/wtf/TypeTraits.h
M Source/WTF/wtf/WeakPtr.h
M Source/WTF/wtf/WeakRef.h
M Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUBufferBinding.h
M Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUCanvasConfiguration.h
M Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUImageCopyTexture.h
M Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUPipelineDescriptorBase.h
M Source/WebCore/Modules/WebGPU/InternalAPI/WebGPUProgrammableStage.h
M Source/WebCore/Modules/WebGPU/InternalAPI/WebGPURenderPassColorAttachment.h
M Source/WebCore/Modules/WebGPU/InternalAPI/WebGPURenderPassDepthStencilAttachment.h
M Source/WebCore/Modules/applepay/PaymentCoordinator.h
M Source/WebCore/Modules/audiosession/DOMAudioSession.h
M Source/WebCore/Modules/encryptedmedia/CDMClient.h
M Source/WebCore/Modules/encryptedmedia/MediaKeySystemClient.h
M Source/WebCore/Modules/fetch/FormDataConsumer.h
M Source/WebCore/Modules/gamepad/NavigatorGamepad.h
M Source/WebCore/Modules/indexeddb/client/IDBConnectionToServerDelegate.h
M Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabase.h
M Source/WebCore/Modules/indexeddb/server/UniqueIDBDatabaseManager.h
M Source/WebCore/Modules/mediarecorder/MediaRecorder.h
M Source/WebCore/Modules/mediasession/MediaSession.cpp
M Source/WebCore/Modules/mediasession/MediaSession.h
M Source/WebCore/Modules/mediasession/MediaSessionCoordinator.h
M Source/WebCore/Modules/mediasession/MediaSessionCoordinatorPrivate.h
M Source/WebCore/Modules/mediastream/MediaStream.h
M Source/WebCore/Modules/mediastream/MediaStreamTrack.h
M Source/WebCore/Modules/mediastream/MediaStreamTrackProcessor.h
M Source/WebCore/Modules/mediastream/PeerConnectionBackend.h
M Source/WebCore/Modules/mediastream/RTCController.h
M Source/WebCore/Modules/mediastream/RTCDataChannelRemoteHandler.h
M Source/WebCore/Modules/mediastream/RTCDtlsTransport.h
M Source/WebCore/Modules/mediastream/RTCDtlsTransportBackend.h
M Source/WebCore/Modules/mediastream/RTCIceTransport.h
M Source/WebCore/Modules/mediastream/RTCIceTransportBackend.h
M Source/WebCore/Modules/mediastream/RTCRtpTransceiver.cpp
M Source/WebCore/Modules/mediastream/RTCRtpTransceiver.h
M Source/WebCore/Modules/mediastream/RTCSctpTransport.h
M Source/WebCore/Modules/mediastream/RTCSctpTransportBackend.h
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerDtlsTransportBackend.cpp
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerDtlsTransportBackend.h
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerIceTransportBackend.cpp
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerIceTransportBackend.h
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerPeerConnectionBackend.h
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerRtpSenderBackend.h
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerSctpTransportBackend.cpp
M Source/WebCore/Modules/mediastream/gstreamer/GStreamerSctpTransportBackend.h
M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCDtlsTransportBackend.cpp
M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCDtlsTransportBackend.h
M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCIceTransportBackend.cpp
M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCIceTransportBackend.h
M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.h
M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpSenderBackend.h
M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCSctpTransportBackend.cpp
M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCSctpTransportBackend.h
M Source/WebCore/Modules/model-element/ModelPlayerClient.h
M Source/WebCore/Modules/model-element/scenekit/SceneKitModelLoaderClient.h
M Source/WebCore/Modules/permissions/PermissionObserver.h
M Source/WebCore/Modules/speech/SpeechRecognitionCaptureSourceImpl.h
M Source/WebCore/Modules/speech/SpeechRecognitionConnectionClient.h
M Source/WebCore/Modules/speech/SpeechRecognitionRequest.h
M Source/WebCore/Modules/speech/SpeechRecognizer.h
M Source/WebCore/Modules/storage/StorageManager.cpp
M Source/WebCore/Modules/storage/StorageManager.h
M Source/WebCore/Modules/webauthn/AuthenticatorCoordinator.h
M Source/WebCore/Modules/webauthn/AuthenticatorCoordinatorClient.h
M Source/WebCore/Modules/websockets/WebSocketChannelClient.h
M Source/WebCore/PAL/pal/system/mac/SystemSleepListenerMac.h
M Source/WebCore/bindings/js/JSDOMGlobalObject.cpp
M Source/WebCore/bindings/js/JSEventListener.h
M Source/WebCore/bindings/js/ScriptBufferSourceProvider.h
M Source/WebCore/bindings/js/WebCoreJSClientData.h
M Source/WebCore/css/CSSFontFace.cpp
M Source/WebCore/css/CSSFontFace.h
M Source/WebCore/css/CSSFontFaceSet.h
M Source/WebCore/css/CSSFontSelector.h
M Source/WebCore/css/CSSSegmentedFontFace.h
M Source/WebCore/css/FontFace.h
M Source/WebCore/css/FontFaceSet.h
M Source/WebCore/css/calc/CSSCalcSymbolTable.h
M Source/WebCore/css/parser/CSSParserImpl.cpp
M Source/WebCore/css/parser/CSSParserImpl.h
M Source/WebCore/css/parser/CSSParserObserverWrapper.h
M Source/WebCore/dom/DeviceOrientationAndMotionAccessController.h
M Source/WebCore/dom/Document.cpp
M Source/WebCore/dom/Document.h
M Source/WebCore/dom/DocumentMarker.h
M Source/WebCore/dom/DocumentStorageAccess.h
M Source/WebCore/dom/EventPath.h
M Source/WebCore/dom/IdleCallbackController.h
M Source/WebCore/dom/LoadableScriptClient.h
M Source/WebCore/dom/MutationObserverRegistration.h
M Source/WebCore/dom/RenderedDocumentMarker.h
M Source/WebCore/dom/VisibilityChangeClient.h
M Source/WebCore/dom/messageports/MessagePortChannelProvider.h
M Source/WebCore/editing/AlternativeTextController.h
M Source/WebCore/editing/SpellChecker.h
M Source/WebCore/fileapi/FileReaderLoaderClient.h
M Source/WebCore/html/BaseDateAndTimeInputType.h
M Source/WebCore/html/CanvasBase.h
M Source/WebCore/html/CanvasObserver.h
M Source/WebCore/html/CustomPaintImage.cpp
M Source/WebCore/html/CustomPaintImage.h
M Source/WebCore/html/HTMLMediaElement.h
M Source/WebCore/html/MediaElementSession.cpp
M Source/WebCore/html/MediaElementSession.h
M Source/WebCore/html/TextFieldInputType.h
M Source/WebCore/html/URLSearchParams.cpp
M Source/WebCore/html/URLSearchParams.h
M Source/WebCore/html/ValidationMessage.h
M Source/WebCore/html/canvas/WebGLObject.cpp
M Source/WebCore/html/canvas/WebGLObject.h
M Source/WebCore/html/canvas/WebGLRenderingContextBase.h
M Source/WebCore/html/parser/HTMLResourcePreloader.h
M Source/WebCore/html/parser/HTMLTreeBuilder.cpp
M Source/WebCore/html/shadow/DateTimeEditElement.cpp
M Source/WebCore/html/shadow/DateTimeEditElement.h
M Source/WebCore/html/shadow/DateTimeFieldElement.cpp
M Source/WebCore/html/shadow/DateTimeFieldElement.h
M Source/WebCore/html/shadow/DateTimeFieldElements.cpp
M Source/WebCore/html/shadow/DateTimeFieldElements.h
M Source/WebCore/html/shadow/DateTimeNumericFieldElement.cpp
M Source/WebCore/html/shadow/DateTimeNumericFieldElement.h
M Source/WebCore/html/shadow/DateTimeSymbolicFieldElement.cpp
M Source/WebCore/html/shadow/DateTimeSymbolicFieldElement.h
M Source/WebCore/html/shadow/SpinButtonElement.h
M Source/WebCore/html/track/AudioTrackClient.h
M Source/WebCore/html/track/TextTrackClient.h
M Source/WebCore/html/track/TrackBase.cpp
M Source/WebCore/html/track/TrackBase.h
M Source/WebCore/html/track/TrackListBase.h
M Source/WebCore/html/track/VideoTrackClient.h
M Source/WebCore/inspector/InspectorFrontendClient.h
M Source/WebCore/inspector/agents/InspectorCanvasAgent.h
M Source/WebCore/layout/LayoutState.h
M Source/WebCore/layout/formattingContexts/table/TableFormattingGeometry.cpp
M Source/WebCore/layout/formattingContexts/table/TableFormattingGeometry.h
M Source/WebCore/layout/formattingContexts/table/TableGrid.cpp
M Source/WebCore/layout/formattingContexts/table/TableGrid.h
M Source/WebCore/layout/formattingContexts/table/TableLayout.cpp
M Source/WebCore/layout/integration/LayoutIntegrationBoxTree.h
M Source/WebCore/layout/integration/inline/LayoutIntegrationInlineContent.h
M Source/WebCore/loader/ContentFilterClient.h
M Source/WebCore/loader/CookieChangeListener.h
M Source/WebCore/loader/DocumentLoader.h
M Source/WebCore/loader/DocumentThreadableLoader.h
M Source/WebCore/loader/FontLoadRequest.h
M Source/WebCore/loader/FrameLoader.h
M Source/WebCore/loader/ImageLoader.h
M Source/WebCore/loader/LinkLoader.h
M Source/WebCore/loader/LinkLoaderClient.h
M Source/WebCore/loader/NetscapePlugInStreamLoader.h
M Source/WebCore/loader/PolicyChecker.cpp
M Source/WebCore/loader/PolicyChecker.h
M Source/WebCore/loader/TextTrackLoader.h
M Source/WebCore/loader/appcache/ApplicationCacheGroup.h
M Source/WebCore/loader/cache/CachedImage.h
M Source/WebCore/loader/cache/CachedImageClient.h
M Source/WebCore/loader/cache/CachedRawResourceClient.h
M Source/WebCore/loader/cache/CachedResource.h
M Source/WebCore/loader/cache/CachedResourceClient.h
M Source/WebCore/page/ActivityStateChangeObserver.h
M Source/WebCore/page/DOMWindowExtension.h
M Source/WebCore/page/DebugPageOverlays.cpp
M Source/WebCore/page/DeviceClient.h
M Source/WebCore/page/DeviceController.cpp
M Source/WebCore/page/DeviceController.h
M Source/WebCore/page/FrameDestructionObserver.h
M Source/WebCore/page/ImageOverlayController.h
M Source/WebCore/page/LocalDOMWindow.cpp
M Source/WebCore/page/LocalDOMWindow.h
M Source/WebCore/page/MediaCanStartListener.h
M Source/WebCore/page/MediaProducer.h
M Source/WebCore/page/PageGroup.h
M Source/WebCore/page/PageOverlay.cpp
M Source/WebCore/page/PageOverlay.h
M Source/WebCore/page/PopupOpeningObserver.h
M Source/WebCore/page/ResourceUsageOverlay.h
M Source/WebCore/page/ScreenOrientation.h
M Source/WebCore/page/SpeechSynthesisClient.h
M Source/WebCore/page/UserContentProvider.h
M Source/WebCore/page/ios/ContentChangeObserver.h
M Source/WebCore/page/mac/ServicesOverlayController.h
M Source/WebCore/page/scrolling/ScrollAnchoringController.h
M Source/WebCore/platform/DataListSuggestionPicker.h
M Source/WebCore/platform/DateTimeChooser.h
M Source/WebCore/platform/DeferrableTask.h
M Source/WebCore/platform/NowPlayingManager.cpp
M Source/WebCore/platform/NowPlayingManager.h
M Source/WebCore/platform/PictureInPictureObserver.h
M Source/WebCore/platform/PlatformContentFilter.h
M Source/WebCore/platform/PlatformSpeechSynthesisUtterance.h
M Source/WebCore/platform/PreviewConverter.h
M Source/WebCore/platform/PreviewConverterClient.h
M Source/WebCore/platform/PreviewConverterProvider.h
M Source/WebCore/platform/ScreenOrientationManager.h
M Source/WebCore/platform/ScrollableArea.cpp
M Source/WebCore/platform/ScrollableArea.h
M Source/WebCore/platform/ThermalMitigationNotifier.h
M Source/WebCore/platform/Timer.h
M Source/WebCore/platform/audio/AudioSession.cpp
M Source/WebCore/platform/audio/AudioSession.h
M Source/WebCore/platform/audio/AudioSourceProviderClient.h
M Source/WebCore/platform/audio/PlatformMediaSession.h
M Source/WebCore/platform/audio/PlatformMediaSessionManager.cpp
M Source/WebCore/platform/audio/PlatformMediaSessionManager.h
M Source/WebCore/platform/audio/cocoa/MediaSessionManagerCocoa.h
M Source/WebCore/platform/audio/glib/MediaSessionManagerGLib.h
M Source/WebCore/platform/audio/gstreamer/AudioFileReaderGStreamer.cpp
M Source/WebCore/platform/audio/ios/MediaSessionHelperIOS.h
M Source/WebCore/platform/audio/ios/MediaSessionManagerIOS.h
M Source/WebCore/platform/audio/mac/AudioSessionMac.h
M Source/WebCore/platform/audio/mac/AudioSessionMac.mm
M Source/WebCore/platform/audio/mac/SharedRoutingArbitrator.h
M Source/WebCore/platform/audio/mac/SharedRoutingArbitrator.mm
M Source/WebCore/platform/cocoa/PlaybackSessionModel.h
M Source/WebCore/platform/cocoa/PowerSourceNotifier.h
M Source/WebCore/platform/cocoa/VideoPresentationModel.h
M Source/WebCore/platform/encryptedmedia/CDMInstance.h
M Source/WebCore/platform/encryptedmedia/CDMInstanceSession.h
M Source/WebCore/platform/encryptedmedia/CDMPrivate.h
M Source/WebCore/platform/encryptedmedia/CDMProxy.h
M Source/WebCore/platform/gamepad/GamepadProviderClient.h
M Source/WebCore/platform/gamepad/PlatformGamepad.h
M Source/WebCore/platform/gamepad/cocoa/GameControllerHapticEffect.h
M Source/WebCore/platform/gamepad/cocoa/GameControllerHapticEngines.h
M Source/WebCore/platform/graphics/LegacyCDMSession.h
M Source/WebCore/platform/graphics/MediaPlayer.h
M Source/WebCore/platform/graphics/RenderingResource.h
M Source/WebCore/platform/graphics/TiledBacking.h
M Source/WebCore/platform/graphics/TrackPrivateBaseClient.h
M Source/WebCore/platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.h
M Source/WebCore/platform/graphics/avfoundation/ContentKeyGroupDataSource.h
M Source/WebCore/platform/graphics/avfoundation/SampleBufferDisplayLayer.cpp
M Source/WebCore/platform/graphics/avfoundation/SampleBufferDisplayLayer.h
M Source/WebCore/platform/graphics/avfoundation/WebAVSampleBufferListener.h
M Source/WebCore/platform/graphics/avfoundation/objc/AVOutputDeviceMenuControllerTargetPicker.h
M Source/WebCore/platform/graphics/avfoundation/objc/AVOutputDeviceMenuControllerTargetPicker.mm
M Source/WebCore/platform/graphics/avfoundation/objc/AVPlaybackTargetPicker.h
M Source/WebCore/platform/graphics/avfoundation/objc/AVRoutePickerViewTargetPicker.h
M Source/WebCore/platform/graphics/avfoundation/objc/AVRoutePickerViewTargetPicker.mm
M Source/WebCore/platform/graphics/avfoundation/objc/CDMInstanceFairPlayStreamingAVFObjC.h
M Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.h
M Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h
M Source/WebCore/platform/graphics/avfoundation/objc/LocalSampleBufferDisplayLayer.h
M Source/WebCore/platform/graphics/avfoundation/objc/LocalSampleBufferDisplayLayer.mm
M Source/WebCore/platform/graphics/avfoundation/objc/MediaPlaybackTargetPickerMac.h
M Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.h
M Source/WebCore/platform/graphics/cocoa/TextTrackRepresentationCocoa.h
M Source/WebCore/platform/graphics/texmap/TextureMapperLayer.h
M Source/WebCore/platform/ios/MotionManagerClient.h
M Source/WebCore/platform/ios/wak/WAKWindow.h
M Source/WebCore/platform/mac/DataDetectorHighlight.h
M Source/WebCore/platform/mac/PowerObserverMac.h
M Source/WebCore/platform/mediastream/AudioTrackPrivateMediaStream.h
M Source/WebCore/platform/mediastream/MediaStreamPrivate.cpp
M Source/WebCore/platform/mediastream/MediaStreamPrivate.h
M Source/WebCore/platform/mediastream/MediaStreamTrackDataHolder.cpp
M Source/WebCore/platform/mediastream/MediaStreamTrackPrivate.cpp
M Source/WebCore/platform/mediastream/MediaStreamTrackPrivate.h
M Source/WebCore/platform/mediastream/RTCDataChannelHandlerClient.h
M Source/WebCore/platform/mediastream/RealtimeMediaSource.cpp
M Source/WebCore/platform/mediastream/RealtimeMediaSource.h
M Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.cpp
M Source/WebCore/platform/mediastream/RealtimeMediaSourceCenter.h
M Source/WebCore/platform/mediastream/RealtimeOutgoingAudioSource.h
M Source/WebCore/platform/mediastream/RealtimeOutgoingVideoSource.h
M Source/WebCore/platform/mediastream/cocoa/AudioMediaStreamTrackRendererCocoa.h
M Source/WebCore/platform/mediastream/cocoa/AudioMediaStreamTrackRendererUnit.h
M Source/WebCore/platform/mediastream/cocoa/DisplayCaptureSourceCocoa.h
M Source/WebCore/platform/mediastream/gstreamer/GStreamerAudioCaptureSource.h
M Source/WebCore/platform/mediastream/gstreamer/GStreamerCaptureDeviceManager.h
M Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.cpp
M Source/WebCore/platform/mediastream/gstreamer/GStreamerCapturer.h
M Source/WebCore/platform/mediastream/gstreamer/GStreamerMediaStreamSource.cpp
M Source/WebCore/platform/mediastream/gstreamer/GStreamerVideoCaptureSource.h
M Source/WebCore/platform/mediastream/gstreamer/MockDisplayCaptureSourceGStreamer.cpp
M Source/WebCore/platform/mediastream/gstreamer/MockDisplayCaptureSourceGStreamer.h
M Source/WebCore/platform/mediastream/gstreamer/MockRealtimeAudioSourceGStreamer.h
M Source/WebCore/platform/mediastream/gstreamer/MockRealtimeVideoSourceGStreamer.h
M Source/WebCore/platform/mediastream/gstreamer/RealtimeOutgoingMediaSourceGStreamer.h
M Source/WebCore/platform/mediastream/ios/MediaCaptureStatusBarManager.h
M Source/WebCore/platform/mediastream/ios/ReplayKitCaptureSource.h
M Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCDTMFSenderBackend.h
M Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCLogSink.h
M Source/WebCore/platform/mediastream/mac/BaseAudioSharedUnit.h
M Source/WebCore/platform/mediastream/mac/CGDisplayStreamCaptureSource.h
M Source/WebCore/platform/mediastream/mac/CoreAudioCaptureSource.h
M Source/WebCore/platform/mediastream/mac/CoreAudioSharedUnit.h
M Source/WebCore/platform/mediastream/mac/MediaStreamTrackAudioSourceProviderCocoa.h
M Source/WebCore/platform/mediastream/mac/ScreenCaptureKitCaptureSource.h
M Source/WebCore/platform/mediastream/mac/ScreenCaptureKitSharingSessionManager.h
M Source/WebCore/platform/mediastream/mac/ScreenCaptureKitSharingSessionManager.mm
M Source/WebCore/platform/mock/MediaPlaybackTargetPickerMock.h
M Source/WebCore/platform/mock/MockRealtimeMediaSourceCenter.cpp
M Source/WebCore/platform/network/NetworkStorageSession.h
M Source/WebCore/platform/network/cocoa/CookieStorageObserver.h
M Source/WebCore/platform/network/cocoa/RangeResponseGenerator.mm
M Source/WebCore/platform/xr/PlatformXR.h
M Source/WebCore/rendering/GridTrackSizingAlgorithm.h
M Source/WebCore/rendering/RenderBlockFlow.cpp
M Source/WebCore/rendering/RenderBlockFlow.h
M Source/WebCore/style/Styleable.cpp
M Source/WebCore/style/Styleable.h
M Source/WebCore/svg/SVGLengthContext.cpp
M Source/WebCore/svg/SVGLengthContext.h
M Source/WebCore/svg/SVGPathByteStream.h
M Source/WebCore/svg/SVGPathConsumer.h
M Source/WebCore/svg/SVGPathSource.h
M Source/WebCore/svg/SVGResourceElementClient.h
M Source/WebCore/svg/SVGToOTFFontConversion.cpp
M Source/WebCore/testing/Internals.h
M Source/WebCore/testing/MockCDMFactory.h
M Source/WebCore/testing/MockPageOverlayClient.h
M Source/WebCore/testing/WebXRTest.cpp
M Source/WebCore/testing/WebXRTest.h
M Source/WebCore/workers/WorkerRunLoop.h
M Source/WebCore/workers/WorkerScriptLoaderClient.h
M Source/WebCore/workers/service/background-fetch/BackgroundFetch.h
M Source/WebCore/workers/service/background-fetch/BackgroundFetchEngine.h
M Source/WebCore/workers/service/background-fetch/BackgroundFetchRecordLoader.h
M Source/WebCore/workers/service/background-fetch/BackgroundFetchRegistration.cpp
M Source/WebCore/workers/service/server/SWServer.h
M Source/WebCore/workers/service/server/SWServerDelegate.h
M Source/WebCore/worklets/PaintWorkletGlobalScope.cpp
M Source/WebCore/worklets/PaintWorkletGlobalScope.h
M Source/WebCore/xml/XMLHttpRequestProgressEventThrottle.h
M Source/WebKit/GPUProcess/GPUConnectionToWebProcess.h
M Source/WebKit/GPUProcess/media/RemoteAudioSessionProxy.h
M Source/WebKit/GPUProcess/media/RemoteAudioSessionProxyManager.h
M Source/WebKit/GPUProcess/media/RemoteCDMFactoryProxy.h
M Source/WebKit/GPUProcess/media/RemoteCDMProxy.h
M Source/WebKit/GPUProcess/media/RemoteLegacyCDMFactoryProxy.h
M Source/WebKit/GPUProcess/media/RemoteLegacyCDMSessionProxy.cpp
M Source/WebKit/GPUProcess/media/RemoteLegacyCDMSessionProxy.h
M Source/WebKit/GPUProcess/media/RemoteMediaPlayerManagerProxy.h
M Source/WebKit/GPUProcess/webrtc/RemoteAudioMediaStreamTrackRendererInternalUnitManager.cpp
M Source/WebKit/GPUProcess/webrtc/RemoteAudioMediaStreamTrackRendererInternalUnitManager.h
M Source/WebKit/GPUProcess/webrtc/RemoteSampleBufferDisplayLayer.h
M Source/WebKit/NetworkProcess/BackgroundFetchLoad.cpp
M Source/WebKit/NetworkProcess/BackgroundFetchLoad.h
M Source/WebKit/NetworkProcess/Classifier/ResourceLoadStatisticsStore.h
M Source/WebKit/NetworkProcess/Downloads/Download.h
M Source/WebKit/NetworkProcess/Downloads/PendingDownload.h
M Source/WebKit/NetworkProcess/NetworkDataTask.h
M Source/WebKit/NetworkProcess/NetworkLoad.h
M Source/WebKit/NetworkProcess/NetworkLoadChecker.h
M Source/WebKit/NetworkProcess/NetworkLoadScheduler.h
M Source/WebKit/NetworkProcess/NetworkSession.cpp
M Source/WebKit/NetworkProcess/NetworkSession.h
M Source/WebKit/NetworkProcess/PingLoad.h
M Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementDatabase.h
M Source/WebKit/NetworkProcess/PrivateClickMeasurement/PrivateClickMeasurementManager.h
M Source/WebKit/NetworkProcess/ServiceWorker/WebSWRegistrationStore.h
M Source/WebKit/NetworkProcess/SharedWorker/WebSharedWorker.h
M Source/WebKit/NetworkProcess/SharedWorker/WebSharedWorkerServer.h
M Source/WebKit/NetworkProcess/SharedWorker/WebSharedWorkerServerConnection.h
M Source/WebKit/NetworkProcess/SharedWorker/WebSharedWorkerServerToContextConnection.h
M Source/WebKit/NetworkProcess/WebSocketTask.h
M Source/WebKit/NetworkProcess/cache/AsyncRevalidation.h
M Source/WebKit/NetworkProcess/cache/NetworkCacheSpeculativeLoadManager.h
M Source/WebKit/NetworkProcess/cocoa/NetworkSessionCocoa.h
M Source/WebKit/NetworkProcess/cocoa/WebSocketTaskCocoa.h
M Source/WebKit/NetworkProcess/curl/WebSocketTaskCurl.h
M Source/WebKit/NetworkProcess/storage/BackgroundFetchStoreManager.h
M Source/WebKit/NetworkProcess/storage/CacheStorageCache.h
M Source/WebKit/NetworkProcess/storage/CacheStorageManager.h
M Source/WebKit/NetworkProcess/storage/FileSystemStorageHandle.h
M Source/WebKit/NetworkProcess/storage/FileSystemStorageManager.h
M Source/WebKit/NetworkProcess/storage/OriginStorageManager.h
M Source/WebKit/NetworkProcess/storage/SQLiteStorageArea.h
M Source/WebKit/NetworkProcess/storage/StorageAreaBase.h
M Source/WebKit/NetworkProcess/webrtc/NetworkRTCMonitor.h
M Source/WebKit/NetworkProcess/webrtc/NetworkRTCTCPSocketCocoa.h
M Source/WebKit/NetworkProcess/webtransport/NetworkTransportSession.h
M Source/WebKit/Platform/IPC/DaemonConnection.h
M Source/WebKit/Platform/IPC/MessageObserver.h
M Source/WebKit/Platform/IPC/MessageReceiver.h
M Source/WebKit/Platform/cocoa/MediaCapability.h
M Source/WebKit/Platform/cocoa/PaymentAuthorizationPresenter.h
M Source/WebKit/Shared/ApplePay/WebPaymentCoordinatorProxy.h
M Source/WebKit/Shared/Authentication/AuthenticationManager.h
M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStore.h
M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerBackingStoreCollection.h
M Source/WebKit/Shared/RemoteLayerTree/RemoteLayerWithRemoteRenderingBackingStore.h
M Source/WebKit/Shared/WebSQLiteDatabaseTracker.h
M Source/WebKit/UIProcess/API/APIHTTPCookieStore.cpp
M Source/WebKit/UIProcess/API/APIHTTPCookieStore.h
M Source/WebKit/UIProcess/API/Cocoa/WKHTTPCookieStore.mm
M Source/WebKit/UIProcess/API/glib/WebKitCookieManager.cpp
M Source/WebKit/UIProcess/ApplicationStateTracker.h
M Source/WebKit/UIProcess/Authentication/AuthenticationChallengeProxy.cpp
M Source/WebKit/UIProcess/Authentication/AuthenticationChallengeProxy.h
M Source/WebKit/UIProcess/Authentication/cocoa/SecKeyProxyStore.h
M Source/WebKit/UIProcess/Cocoa/ExtensionCapabilityGranter.h
M Source/WebKit/UIProcess/Cocoa/ExtensionCapabilityGranter.mm
M Source/WebKit/UIProcess/Cocoa/GroupActivities/GroupActivitiesSessionNotifier.h
M Source/WebKit/UIProcess/Cocoa/NavigationState.h
M Source/WebKit/UIProcess/Cocoa/SOAuthorization/SubFrameSOAuthorizationSession.h
M Source/WebKit/UIProcess/Cocoa/UIDelegate.h
M Source/WebKit/UIProcess/Cocoa/UserMediaCaptureManagerProxy.cpp
M Source/WebKit/UIProcess/Cocoa/UserMediaCaptureManagerProxy.h
M Source/WebKit/UIProcess/CoordinatedGraphics/DrawingAreaProxyCoordinatedGraphics.h
M Source/WebKit/UIProcess/Downloads/DownloadProxy.cpp
M Source/WebKit/UIProcess/Downloads/DownloadProxyMap.h
M Source/WebKit/UIProcess/DrawingAreaProxy.h
M Source/WebKit/UIProcess/EndowmentStateTracker.h
M Source/WebKit/UIProcess/EndowmentStateTracker.mm
M Source/WebKit/UIProcess/Extensions/WebExtensionContext.cpp
M Source/WebKit/UIProcess/Extensions/WebExtensionController.h
M Source/WebKit/UIProcess/Extensions/WebExtensionMessagePort.h
M Source/WebKit/UIProcess/FrameLoadState.cpp
M Source/WebKit/UIProcess/FrameLoadState.h
M Source/WebKit/UIProcess/LockdownModeObserver.h
M Source/WebKit/UIProcess/Media/AudioSessionRoutingArbitratorProxy.h
M Source/WebKit/UIProcess/Media/cocoa/AudioSessionRoutingArbitratorProxyCocoa.mm
M Source/WebKit/UIProcess/MediaKeySystemPermissionRequestManagerProxy.h
M Source/WebKit/UIProcess/ModelElementController.h
M Source/WebKit/UIProcess/Network/CustomProtocols/LegacyCustomProtocolManagerProxy.h
M Source/WebKit/UIProcess/PageClient.h
M Source/WebKit/UIProcess/PageLoadState.h
M Source/WebKit/UIProcess/ProcessThrottler.h
M Source/WebKit/UIProcess/ProvisionalFrameProxy.h
M Source/WebKit/UIProcess/ProvisionalPageProxy.h
M Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeDrawingAreaProxy.h
M Source/WebKit/UIProcess/RemoteLayerTree/RemoteLayerTreeNode.h
M Source/WebKit/UIProcess/RemoteLayerTree/RemoteScrollingCoordinatorProxy.h
M Source/WebKit/UIProcess/RemoteLayerTree/ios/ScrollingTreeScrollingNodeDelegateIOS.h
M Source/WebKit/UIProcess/RemoteLayerTree/mac/RemoteScrollingCoordinatorProxyMac.h
M Source/WebKit/UIProcess/RemotePageDrawingAreaProxy.h
M Source/WebKit/UIProcess/RemotePageProxy.h
M Source/WebKit/UIProcess/SpeechRecognitionPermissionManager.h
M Source/WebKit/UIProcess/SpeechRecognitionRemoteRealtimeMediaSourceManager.h
M Source/WebKit/UIProcess/SpeechRecognitionServer.h
M Source/WebKit/UIProcess/SystemPreviewController.h
M Source/WebKit/UIProcess/UserMediaPermissionRequestManagerProxy.h
M Source/WebKit/UIProcess/UserMediaProcessManager.h
M Source/WebKit/UIProcess/ViewGestureController.h
M Source/WebKit/UIProcess/WebAuthentication/Authenticator.cpp
M Source/WebKit/UIProcess/WebAuthentication/Authenticator.h
M Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.cpp
M Source/WebKit/UIProcess/WebAuthentication/AuthenticatorManager.h
M Source/WebKit/UIProcess/WebAuthentication/AuthenticatorTransportService.cpp
M Source/WebKit/UIProcess/WebAuthentication/AuthenticatorTransportService.h
M Source/WebKit/UIProcess/WebAuthentication/Cocoa/AuthenticatorPresenterCoordinator.h
M Source/WebKit/UIProcess/WebAuthentication/Cocoa/CcidService.h
M Source/WebKit/UIProcess/WebAuthentication/Cocoa/CcidService.mm
M Source/WebKit/UIProcess/WebAuthentication/Cocoa/HidService.h
M Source/WebKit/UIProcess/WebAuthentication/Cocoa/HidService.mm
M Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalService.h
M Source/WebKit/UIProcess/WebAuthentication/Cocoa/LocalService.mm
M Source/WebKit/UIProcess/WebAuthentication/Cocoa/NfcService.h
M Source/WebKit/UIProcess/WebAuthentication/Cocoa/NfcService.mm
M Source/WebKit/UIProcess/WebAuthentication/Cocoa/WebAuthenticationPanelClient.h
M Source/WebKit/UIProcess/WebAuthentication/Mock/MockAuthenticatorManager.cpp
M Source/WebKit/UIProcess/WebAuthentication/Mock/MockAuthenticatorManager.h
M Source/WebKit/UIProcess/WebAuthentication/Mock/MockCcidService.h
M Source/WebKit/UIProcess/WebAuthentication/Mock/MockCcidService.mm
M Source/WebKit/UIProcess/WebAuthentication/Mock/MockHidConnection.h
M Source/WebKit/UIProcess/WebAuthentication/Mock/MockHidService.cpp
M Source/WebKit/UIProcess/WebAuthentication/Mock/MockHidService.h
M Source/WebKit/UIProcess/WebAuthentication/Mock/MockLocalService.h
M Source/WebKit/UIProcess/WebAuthentication/Mock/MockLocalService.mm
M Source/WebKit/UIProcess/WebAuthentication/Mock/MockNfcService.h
M Source/WebKit/UIProcess/WebAuthentication/Mock/MockNfcService.mm
M Source/WebKit/UIProcess/WebAuthentication/Virtual/VirtualAuthenticatorManager.cpp
M Source/WebKit/UIProcess/WebAuthentication/Virtual/VirtualAuthenticatorManager.h
M Source/WebKit/UIProcess/WebAuthentication/Virtual/VirtualHidConnection.h
M Source/WebKit/UIProcess/WebAuthentication/Virtual/VirtualLocalConnection.h
M Source/WebKit/UIProcess/WebAuthentication/Virtual/VirtualService.h
M Source/WebKit/UIProcess/WebAuthentication/Virtual/VirtualService.mm
M Source/WebKit/UIProcess/WebAuthentication/WebAuthenticationRequestData.h
M Source/WebKit/UIProcess/WebAuthentication/WebAuthenticatorCoordinatorProxy.h
M Source/WebKit/UIProcess/WebAuthentication/fido/CtapDriver.h
M Source/WebKit/UIProcess/WebAuthentication/fido/CtapHidDriver.cpp
M Source/WebKit/UIProcess/WebAuthentication/fido/CtapHidDriver.h
M Source/WebKit/UIProcess/WebAuthentication/fido/FidoService.cpp
M Source/WebKit/UIProcess/WebAuthentication/fido/FidoService.h
M Source/WebKit/UIProcess/WebContextMenuListenerProxy.cpp
M Source/WebKit/UIProcess/WebContextMenuListenerProxy.h
M Source/WebKit/UIProcess/WebContextMenuProxy.h
M Source/WebKit/UIProcess/WebFullScreenManagerProxy.h
M Source/WebKit/UIProcess/WebLockRegistryProxy.h
M Source/WebKit/UIProcess/WebNavigationState.h
M Source/WebKit/UIProcess/WebPageProxy.cpp
M Source/WebKit/UIProcess/WebPageProxyInternals.h
M Source/WebKit/UIProcess/WebPasteboardProxy.cpp
M Source/WebKit/UIProcess/WebPasteboardProxy.h
M Source/WebKit/UIProcess/WebProcessPool.h
M Source/WebKit/UIProcess/WebProcessProxy.h
M Source/WebKit/UIProcess/WebViewDidMoveToWindowObserver.h
M Source/WebKit/UIProcess/WebsiteData/WebDeviceOrientationAndMotionAccessController.h
M Source/WebKit/UIProcess/XR/PlatformXRCoordinator.h
M Source/WebKit/UIProcess/XR/PlatformXRSystem.h
M Source/WebKit/UIProcess/XR/ios/PlatformXRARKit.h
M Source/WebKit/UIProcess/ios/ProcessStateMonitor.h
M Source/WebKit/UIProcess/mac/TiledCoreAnimationDrawingAreaProxy.h
M Source/WebKit/WebProcess/Automation/WebAutomationDOMWindowObserver.h
M Source/WebKit/WebProcess/GPU/graphics/RemoteRenderingBackendProxy.h
M Source/WebKit/WebProcess/GPU/graphics/RemoteResourceCacheProxy.h
M Source/WebKit/WebProcess/GPU/media/RemoteAudioSession.cpp
M Source/WebKit/WebProcess/GPU/media/RemoteAudioSession.h
M Source/WebKit/WebProcess/GPU/media/RemoteCDMFactory.h
M Source/WebKit/WebProcess/GPU/media/RemoteLegacyCDM.h
M Source/WebKit/WebProcess/GPU/media/RemoteLegacyCDMFactory.h
M Source/WebKit/WebProcess/GPU/media/RemoteLegacyCDMSession.h
M Source/WebKit/WebProcess/GPU/media/RemoteMediaEngineConfigurationFactory.h
M Source/WebKit/WebProcess/GPU/webrtc/AudioMediaStreamTrackRendererInternalUnitManager.cpp
M Source/WebKit/WebProcess/GPU/webrtc/AudioMediaStreamTrackRendererInternalUnitManager.h
M Source/WebKit/WebProcess/GPU/webrtc/SampleBufferDisplayLayer.cpp
M Source/WebKit/WebProcess/GPU/webrtc/SampleBufferDisplayLayer.h
M Source/WebKit/WebProcess/GPU/webrtc/SampleBufferDisplayLayerManager.cpp
M Source/WebKit/WebProcess/GPU/webrtc/SampleBufferDisplayLayerManager.h
M Source/WebKit/WebProcess/InjectedBundle/API/glib/DOM/DOMObjectCache.cpp
M Source/WebKit/WebProcess/InjectedBundle/InjectedBundleScriptWorld.h
M Source/WebKit/WebProcess/Inspector/WebInspectorClient.h
M Source/WebKit/WebProcess/Inspector/WebInspectorUIExtensionController.h
M Source/WebKit/WebProcess/MediaStream/UserMediaPermissionRequestManager.h
M Source/WebKit/WebProcess/Network/webrtc/LibWebRTCNetworkManager.h
M Source/WebKit/WebProcess/Network/webrtc/LibWebRTCResolver.h
M Source/WebKit/WebProcess/Network/webrtc/LibWebRTCSocket.h
M Source/WebKit/WebProcess/Network/webrtc/WebMDNSRegister.h
M Source/WebKit/WebProcess/Network/webrtc/WebRTCMonitor.h
M Source/WebKit/WebProcess/Plugins/PDF/PDFPluginBase.h
M Source/WebKit/WebProcess/Plugins/PDF/PDFScriptEvaluator.h
M Source/WebKit/WebProcess/Plugins/PDF/PDFScriptEvaluator.mm
M Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/PDFDataDetectorOverlayController.h
M Source/WebKit/WebProcess/Plugins/PDF/UnifiedPDF/PDFDataDetectorOverlayController.mm
M Source/WebKit/WebProcess/Speech/SpeechRecognitionRealtimeMediaSourceManager.cpp
M Source/WebKit/WebProcess/WebCoreSupport/WebColorChooser.h
M Source/WebKit/WebProcess/WebCoreSupport/WebDataListSuggestionPicker.h
M Source/WebKit/WebProcess/WebCoreSupport/WebDateTimeChooser.h
M Source/WebKit/WebProcess/WebCoreSupport/WebLocalFrameLoaderClient.cpp
M Source/WebKit/WebProcess/WebCoreSupport/WebScreenOrientationManager.cpp
M Source/WebKit/WebProcess/WebCoreSupport/WebScreenOrientationManager.h
M Source/WebKit/WebProcess/WebCoreSupport/WebSpeechSynthesisClient.h
M Source/WebKit/WebProcess/WebPage/Cocoa/WebRemoteObjectRegistry.h
M Source/WebKit/WebProcess/WebPage/FindController.h
M Source/WebKit/WebProcess/WebPage/RemoteLayerTree/RemoteLayerTreeDrawingArea.h
M Source/WebKit/WebProcess/WebPage/WebFoundTextRangeController.h
M Source/WebKit/WebProcess/WebPage/WebFrame.h
M Source/WebKit/WebProcess/WebPage/WebPage.cpp
M Source/WebKit/WebProcess/WebPage/WebPageOverlay.h
M Source/WebKit/WebProcess/WebPage/ios/FindIndicatorOverlayClientIOS.h
M Source/WebKit/WebProcess/WebPage/mac/TiledCoreAnimationDrawingArea.h
M Source/WebKit/WebProcess/WebPage/wc/DrawingAreaWC.h
M Source/WebKit/WebProcess/WebStorage/StorageAreaMap.h
M Source/WebKit/WebProcess/XR/PlatformXRSystemProxy.h
M Source/WebKit/webpushd/ApplePushServiceConnection.h
M Source/WebKit/webpushd/PushServiceConnection.h
M Source/WebKit/webpushd/webpushtool/WebPushToolConnection.h
M Source/WebKitLegacy/mac/DOM/DOMInternal.h
M Source/WebKitLegacy/mac/WebCoreSupport/WebFrameLoaderClient.h
M Source/WebKitLegacy/mac/WebCoreSupport/WebSecurityOriginInternal.h
M Source/WebKitLegacy/mac/WebInspector/WebNodeHighlight.h
M Source/WebKitLegacy/mac/WebView/WebArchiveInternal.h
M Source/WebKitLegacy/mac/WebView/WebDocumentLoaderMac.h
M Source/WebKitLegacy/mac/WebView/WebFrameInternal.h
M Source/WebKitLegacy/mac/WebView/WebHTMLViewInternal.h
M Source/WebKitLegacy/mac/WebView/WebResourceInternal.h
M Source/WebKitLegacy/mac/WebView/WebScriptWorldInternal.h
M Tools/TestWebKitAPI/Tests/WTF/WeakPtr.cpp
Log Message:
-----------
Added a compile time assertion that forbids classes that offer WeakPtr
with no corresponding RefPtr or CheckedPtr
https://bugs.webkit.org/show_bug.cgi?id=273569
rdar://127296969
Reviewed by Ryosuke Niwa.
An object that offers WeakPtr with no corresponding RefPtr or CheckedPtr
is a dangerous contradiction. On the one hand, we know that it can be
deleted at any time. On the other hand, when we go to use it, we do
nothing to ensure its lifetime. This has been a source of use after
free / security bugs.
This patch adds a compile time assertion against future uses of this
anti-pattern. An explicit template specialization allow list maintains
existing uses. The allow list is a todo list for future deployment of
RefPtr or CheckedPtr.
This patch does not enforce correct usage of RefPtr or CheckedPtr; it
only enforces a rule that a class must at least offer RefPtr or
CheckedPtr if it offers WeakPtr.
In order to facilitate the allow list, I needed to
* Move some nested classes out-of-line, since C++ does not support
forward declaration or template specialization of nested classes
* Move some destructors out-of-line, since our compile time
assertion requires a complete type definition, and I didn't want to
increase #includes in headers
Canonical link: https://commits.webkit.org/278224@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