Changeset 212568 in webkit


Ignore:
Timestamp:
Feb 17, 2017 1:06:30 PM (7 years ago)
Author:
commit-queue@webkit.org
Message:

Invalidate WebAVSampleBufferStatusChangeListener when MediaPlayerPrivateMediaStreamAVFObjC is deallocated.
https://bugs.webkit.org/show_bug.cgi?id=168488

Patch by Jeremy Jones <jeremyj@apple.com> on 2017-02-17
Reviewed by Jer Noble.

Fixes periodically crashing test: fast/mediastream/MediaStream-video-element-track-stop.html

WebAVSampleBufferStatusChangeListener has an unretained referecne to MediaPlayerPrivateMediaStreamAVFObjC
that must be invaldated when MediaPlayerPrivateMediaStreamAVFObjC is deallocated.

  • platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:

(WebCore::MediaPlayerPrivateMediaStreamAVFObjC::~MediaPlayerPrivateMediaStreamAVFObjC):

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r212564 r212568  
     12017-02-17  Jeremy Jones  <jeremyj@apple.com>
     2
     3        Invalidate WebAVSampleBufferStatusChangeListener when MediaPlayerPrivateMediaStreamAVFObjC is deallocated.
     4        https://bugs.webkit.org/show_bug.cgi?id=168488
     5
     6        Reviewed by Jer Noble.
     7
     8        Fixes periodically crashing test: fast/mediastream/MediaStream-video-element-track-stop.html
     9
     10        WebAVSampleBufferStatusChangeListener has an unretained referecne to MediaPlayerPrivateMediaStreamAVFObjC
     11        that must be invaldated when MediaPlayerPrivateMediaStreamAVFObjC is deallocated.
     12
     13        * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm:
     14        (WebCore::MediaPlayerPrivateMediaStreamAVFObjC::~MediaPlayerPrivateMediaStreamAVFObjC):
     15
    1162017-02-17  Antoine Quint  <graouts@apple.com>
    217
  • trunk/Source/WebCore/platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaStreamAVFObjC.mm

    r211977 r212568  
    181181    destroyLayer();
    182182
     183    [m_statusChangeListener invalidate];
     184
    183185    m_audioTrackMap.clear();
    184186    m_videoTrackMap.clear();
Note: See TracChangeset for help on using the changeset viewer.