Branch: refs/heads/main Home: https://github.com/WebKit/WebKit Commit: fce4138231d1c4c2ff4ca1f32c65c51673477cfb https://github.com/WebKit/WebKit/commit/fce4138231d1c4c2ff4ca1f32c65c51673477cfb Author: Youenn Fablet <you...@apple.com> Date: 2025-07-28 (Mon, 28 Jul 2025)
Changed paths: M Source/WebCore/Headers.cmake M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.cpp M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.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/LibWebRTCMediaEndpoint.cpp M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpReceiverBackend.cpp M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpReceiverBackend.h M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpReceiverTransformBackend.cpp M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpReceiverTransformBackend.h M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpSenderBackend.cpp M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpSenderBackend.h M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpSenderTransformBackend.cpp M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpSenderTransformBackend.h M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpTransceiverBackend.cpp M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpTransceiverBackend.h M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpTransformBackend.cpp M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpTransformBackend.h M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCSctpTransportBackend.cpp M Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCSctpTransportBackend.h M Source/WebCore/SaferCPPExpectations/UncountedCallArgsCheckerExpectations M Source/WebCore/WebCore.xcodeproj/project.pbxproj M Source/WebCore/platform/libwebrtc/LibWebRTCVPXVideoDecoder.cpp M Source/WebCore/platform/mediastream/RealtimeIncomingAudioSource.cpp M Source/WebCore/platform/mediastream/RealtimeIncomingAudioSource.h M Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.cpp M Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.h M Source/WebCore/platform/mediastream/RealtimeOutgoingVideoSource.cpp M Source/WebCore/platform/mediastream/RealtimeOutgoingVideoSource.h M Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCDTMFSenderBackend.cpp M Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCDTMFSenderBackend.h M Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.cpp M Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.h A Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCRefWrappers.h M Source/WebCore/platform/mediastream/libwebrtc/VideoFrameLibWebRTC.cpp M Source/WebCore/platform/mediastream/libwebrtc/VideoFrameLibWebRTC.h M Source/WebCore/platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.cpp M Source/WebCore/platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.h M Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.h M Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.mm Log Message: ----------- Allow to use Ref/RefPtr for webrtc::RefCountInterface objects rdar://155595987 https://bugs.webkit.org/show_bug.cgi?id=295766 Reviewed by Jean-Yves Avenard. We move away from using scoped_refptr objects in WebCore code and move to using Ref/RefPtr to allow better safer CPP validation of the webrtc code. This also allows using more Ref vs. RefPtr which is nicer to read. * Source/WebCore/Headers.cmake: * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.cpp: (WebCore::LibWebRTCDataChannelHandler::LibWebRTCDataChannelHandler): * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCDataChannelHandler.h: * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCDtlsTransportBackend.cpp: (WebCore::LibWebRTCDtlsTransportBackendObserver::LibWebRTCDtlsTransportBackendObserver): (WebCore::LibWebRTCDtlsTransportBackend::LibWebRTCDtlsTransportBackend): (WebCore::LibWebRTCDtlsTransportBackend::registerClient): * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCDtlsTransportBackend.h: * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCIceTransportBackend.cpp: (WebCore::LibWebRTCIceTransportBackendObserver::LibWebRTCIceTransportBackendObserver): (WebCore::LibWebRTCIceTransportBackend::LibWebRTCIceTransportBackend): (WebCore::LibWebRTCIceTransportBackend::registerClient): * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCIceTransportBackend.h: * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.cpp: (WebCore::LibWebRTCMediaEndpoint::LibWebRTCMediaEndpoint): (WebCore::LibWebRTCMediaEndpoint::restartIce): (WebCore::LibWebRTCMediaEndpoint::setConfiguration): (WebCore::LibWebRTCMediaEndpoint::isNegotiationNeeded const): (WebCore::LibWebRTCMediaEndpoint::doSetLocalDescription): (WebCore::LibWebRTCMediaEndpoint::doSetRemoteDescription): (WebCore::LibWebRTCMediaEndpoint::addTrack): (WebCore::LibWebRTCMediaEndpoint::removeTrack): (WebCore::LibWebRTCMediaEndpoint::doCreateOffer): (WebCore::LibWebRTCMediaEndpoint::doCreateAnswer): (WebCore::LibWebRTCMediaEndpoint::gatherDecoderImplementationName): (WebCore::LibWebRTCMediaEndpoint::getStats): (WebCore::LibWebRTCMediaEndpoint::collectTransceivers): (WebCore::LibWebRTCMediaEndpoint::canTrickleIceCandidates const): (WebCore::LibWebRTCMediaEndpoint::createTransceiverBackends): (WebCore::LibWebRTCMediaEndpoint::createSourceAndRTCTrack): (WebCore::LibWebRTCMediaEndpoint::addTransceiver): (WebCore::LibWebRTCMediaEndpoint::setSenderSourceFromTrack): (WebCore::LibWebRTCMediaEndpoint::transceiverBackendFromSender): (WebCore::LibWebRTCMediaEndpoint::close): (WebCore::LibWebRTCMediaEndpoint::addIceCandidate): (WebCore::LibWebRTCMediaEndpoint::OnIceCandidate): (WebCore::SctpTransportState::SctpTransportState): (WebCore::SctpTransportState::createBackend): (WebCore::LibWebRTCMediaEndpoint::setLocalSessionDescriptionSucceeded): (WebCore::LibWebRTCMediaEndpoint::setRemoteSessionDescriptionSucceeded): (WebCore::LibWebRTCMediaEndpoint::gatherStatsForLogging): * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCMediaEndpoint.h: * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCPeerConnectionBackend.cpp: (WebCore::LibWebRTCPeerConnectionBackend::getStats): * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpReceiverBackend.cpp: (WebCore::LibWebRTCRtpReceiverBackend::LibWebRTCRtpReceiverBackend): (WebCore::LibWebRTCRtpReceiverBackend::createSource): (WebCore::LibWebRTCRtpReceiverBackend::rtcRtpTransformBackend): (WebCore::LibWebRTCRtpReceiverBackend::dtlsTransportBackend): * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpReceiverBackend.h: * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpReceiverTransformBackend.cpp: (WebCore::LibWebRTCRtpReceiverTransformBackend::LibWebRTCRtpReceiverTransformBackend): * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpReceiverTransformBackend.h: * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpSenderBackend.cpp: (WebCore::LibWebRTCRtpSenderBackend::LibWebRTCRtpSenderBackend): (WebCore::LibWebRTCRtpSenderBackend::createDTMFBackend): (WebCore::LibWebRTCRtpSenderBackend::rtcRtpTransformBackend): (WebCore::LibWebRTCRtpSenderBackend::dtlsTransportBackend): * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpSenderBackend.h: * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpSenderTransformBackend.cpp: (WebCore::LibWebRTCRtpSenderTransformBackend::LibWebRTCRtpSenderTransformBackend): * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpSenderTransformBackend.h: * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpTransceiverBackend.cpp: (WebCore::LibWebRTCRtpTransceiverBackend::createReceiverBackend): (WebCore::LibWebRTCRtpTransceiverBackend::createSenderBackend): * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpTransceiverBackend.h: * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpTransformBackend.cpp: (WebCore::LibWebRTCRtpTransformBackend::addOutputCallback): (WebCore::LibWebRTCRtpTransformBackend::RegisterTransformedFrameCallback): (WebCore::LibWebRTCRtpTransformBackend::RegisterTransformedFrameSinkCallback): * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCRtpTransformBackend.h: * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCSctpTransportBackend.cpp: (WebCore::LibWebRTCSctpTransportBackendObserver::LibWebRTCSctpTransportBackendObserver): (WebCore::LibWebRTCSctpTransportBackend::LibWebRTCSctpTransportBackend): (WebCore::LibWebRTCSctpTransportBackend::dtlsTransportBackend): (WebCore::LibWebRTCSctpTransportBackend::registerClient): * Source/WebCore/Modules/mediastream/libwebrtc/LibWebRTCSctpTransportBackend.h: * Source/WebCore/WebCore.xcodeproj/project.pbxproj: * Source/WebCore/platform/libwebrtc/LibWebRTCVPXVideoDecoder.cpp: (WebCore::LibWebRTCVPXInternalVideoDecoder::Decoded): * Source/WebCore/platform/mediastream/RealtimeIncomingAudioSource.cpp: (WebCore::RealtimeIncomingAudioSource::RealtimeIncomingAudioSource): * Source/WebCore/platform/mediastream/RealtimeIncomingAudioSource.h: * Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.cpp: (WebCore::RealtimeIncomingVideoSource::RealtimeIncomingVideoSource): (WebCore::m_videoTrack): * Source/WebCore/platform/mediastream/RealtimeIncomingVideoSource.h: * Source/WebCore/platform/mediastream/RealtimeOutgoingVideoSource.cpp: (WebCore::RealtimeOutgoingVideoSource::sendBlackFramesIfNeeded): (WebCore::RealtimeOutgoingVideoSource::sendOneBlackFrame): * Source/WebCore/platform/mediastream/RealtimeOutgoingVideoSource.h: * Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCDTMFSenderBackend.cpp: (WebCore::LibWebRTCDTMFSenderBackend::LibWebRTCDTMFSenderBackend): * Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCDTMFSenderBackend.h: * Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.cpp: (WebCore::LibWebRTCProvider::createPeerConnectionFactory): (WebCore::LibWebRTCProvider::setPeerConnectionFactory): * Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCProvider.h: * Source/WebCore/platform/mediastream/libwebrtc/LibWebRTCRefWrappers.h: Added. (WTF::RTCDefaultRefDerefTraits::refIfNotNull): (WTF::RTCDefaultRefDerefTraits::ref): (WTF::RTCDefaultRefDerefTraits::derefIfNotNull): (WTF::toRef): (WTF::toRefPtr): * Source/WebCore/platform/mediastream/libwebrtc/VideoFrameLibWebRTC.cpp: (WebCore::VideoFrameLibWebRTC::create): (WebCore::VideoFrameLibWebRTC::VideoFrameLibWebRTC): (WebCore::VideoFrameLibWebRTC::pixelBuffer const): (WebCore::VideoFrameLibWebRTC::clone): * Source/WebCore/platform/mediastream/libwebrtc/VideoFrameLibWebRTC.h: * Source/WebCore/platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.cpp: (WebCore::RealtimeIncomingAudioSource::create): (WebCore::RealtimeIncomingAudioSourceCocoa::create): (WebCore::RealtimeIncomingAudioSourceCocoa::RealtimeIncomingAudioSourceCocoa): * Source/WebCore/platform/mediastream/mac/RealtimeIncomingAudioSourceCocoa.h: * Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.h: * Source/WebCore/platform/mediastream/mac/RealtimeIncomingVideoSourceCocoa.mm: (WebCore::RealtimeIncomingVideoSource::create): (WebCore::RealtimeIncomingVideoSourceCocoa::create): (WebCore::RealtimeIncomingVideoSourceCocoa::RealtimeIncomingVideoSourceCocoa): (WebCore::RealtimeIncomingVideoSourceCocoa::toVideoFrame): Canonical link: https://commits.webkit.org/297922@main To unsubscribe from these emails, change your notification settings at https://github.com/WebKit/WebKit/settings/notifications _______________________________________________ webkit-changes mailing list webkit-changes@lists.webkit.org https://lists.webkit.org/mailman/listinfo/webkit-changes