Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 9ede6996fbf3b995e8554abdffe3a50ecd364565
      
https://github.com/WebKit/WebKit/commit/9ede6996fbf3b995e8554abdffe3a50ecd364565
  Author: Jean-Yves Avenard <[email protected]>
  Date:   2025-10-20 (Mon, 20 Oct 2025)

  Changed paths:
    M Source/WebCore/Modules/encryptedmedia/legacy/LegacyCDMSessionClearKey.h
    M Source/WebCore/PlatformMac.cmake
    M Source/WebCore/SaferCPPExpectations/MemoryUnsafeCastCheckerExpectations
    M Source/WebCore/SourcesCocoa.txt
    M Source/WebCore/WebCore.xcodeproj/project.pbxproj
    M Source/WebCore/platform/graphics/LegacyCDMSession.h
    M 
Source/WebCore/platform/graphics/avfoundation/CDMPrivateMediaSourceAVFObjC.h
    M 
Source/WebCore/platform/graphics/avfoundation/CDMPrivateMediaSourceAVFObjC.mm
    M 
Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.h
    M 
Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm
    M 
Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.h
    R 
Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h
    R 
Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm
    M 
Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm
    M 
Source/WebCore/platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm
    M 
Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h
    M 
Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm
    M 
Source/WebCore/platform/graphics/ca/cocoa/GraphicsLayerAsyncContentsDisplayDelegateCocoa.h
    M 
Source/WebCore/platform/graphics/ca/cocoa/GraphicsLayerAsyncContentsDisplayDelegateCocoa.mm
    M Source/WebCore/platform/mac/PasteboardWriter.mm
    M Source/WebKit/WebProcess/GPU/media/RemoteLegacyCDMSession.h

  Log Message:
  -----------
  Remove videoRendererDidReceiveError/audioRendererDidReceiveError from 
CDMSessionMediaSourceAVFObjC
https://bugs.webkit.org/show_bug.cgi?id=300218
rdar://problem/162027087

Reviewed by Andy Estes.

We remove SourceBufferPrivateAVFObjCErrorClient and the need to "filter"
the error received by the LegacyCDMSession.
We remove the CDMSessionMediaSourceAVFObjC virtual class and merge it with
its unique derived class: CDMSessionAVContentKeySession.

Rather than providing the CDMSessionAVContentKeySession with the 
SourceBufferPrivate
we instead split each components that were accessed indirectly:
- initData
- AudioVideoRenderer to flush when the session is invalidated.

Remove toCDMSessionAVContentKeySession in favour of of dynamicDowncast with
its related type traits.

Fly-By: Add various missing headers, exposed when changing unified files 
configuration with removal of CDMSessionMediaSourceAVFObjC
No change in observable behaviour, covered by existing tests.

* Source/WebCore/Modules/encryptedmedia/legacy/LegacyCDMSessionClearKey.h:
* Source/WebCore/PlatformMac.cmake:
* Source/WebCore/SaferCPPExpectations/MemoryUnsafeCastCheckerExpectations:
* Source/WebCore/SourcesCocoa.txt:
* Source/WebCore/WebCore.xcodeproj/project.pbxproj:
* Source/WebCore/platform/graphics/LegacyCDMSession.h:
* Source/WebCore/platform/graphics/avfoundation/CDMPrivateMediaSourceAVFObjC.h:
* Source/WebCore/platform/graphics/avfoundation/CDMPrivateMediaSourceAVFObjC.mm:
(WebCore::CDMPrivateMediaSourceAVFObjC::invalidateSession):
* 
Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.h:
(isType):
(WebCore::CDMSessionAVContentKeySession::create): Deleted.
(WebCore::CDMSessionAVContentKeySession::hasContentKeySession const): Deleted.
(WebCore::CDMSessionAVContentKeySession::logClassName const): Deleted.
(WebCore::toCDMSessionAVContentKeySession): Deleted.
* 
Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVContentKeySession.mm:
(WebCore::CDMSessionAVContentKeySession::CDMSessionAVContentKeySession):
(WebCore::CDMSessionAVContentKeySession::~CDMSessionAVContentKeySession):
(WebCore::CDMSessionAVContentKeySession::releaseKeys):
(WebCore::CDMSessionAVContentKeySession::update):
(WebCore::CDMSessionAVContentKeySession::addParser): Removed
(WebCore::CDMSessionAVContentKeySession::removeParser): Removed
(WebCore::CDMSessionAVContentKeySession::addRenderer):
(WebCore::CDMSessionAVContentKeySession::removeRenderer):
(WebCore::CDMSessionAVContentKeySession::setInitData):
(WebCore::CDMSessionAVContentKeySession::storagePath const):
(WebCore::CDMSessionAVContentKeySession::logChannel const):
* 
Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.h:
* 
Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.h:
 Removed.
* 
Source/WebCore/platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm:
 Removed.
* 
Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
(WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setCDMSession):
* 
Source/WebCore/platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
* 
Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
* 
Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
(WebCore::SourceBufferPrivateAVFObjC::didProvideContentKeyRequestInitializationDataForTrackID):
(WebCore::SourceBufferPrivateAVFObjC::setCDMSession):
(WebCore::SourceBufferPrivateAVFObjC::registerForErrorNotifications): Deleted.
(WebCore::SourceBufferPrivateAVFObjC::unregisterForErrorNotifications): Deleted.
* Source/WebCore/platform/mac/PasteboardWriter.mm:
* Source/WebKit/WebProcess/GPU/media/RemoteLegacyCDMSession.h:

fix setCDMSession

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



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to