Changeset 167639 in webkit


Ignore:
Timestamp:
Apr 21, 2014 5:57:39 PM (10 years ago)
Author:
jer.noble@apple.com
Message:

[MSE][Mac] AVSampleBufferDisplayLayer and AudioRenderer is overretained.
https://bugs.webkit.org/show_bug.cgi?id=131963

Reviewed by Jon Honeycutt.

Adopt the results of -[[class alloc] init] rather than retaining them.

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

(WebCore::SourceBufferPrivateAVFObjC::hasVideo):
(WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r167637 r167639  
     12014-04-21  Jer Noble  <jer.noble@apple.com>
     2
     3        [MSE][Mac] AVSampleBufferDisplayLayer and AudioRenderer is overretained.
     4        https://bugs.webkit.org/show_bug.cgi?id=131963
     5
     6        Reviewed by Jon Honeycutt.
     7
     8        Adopt the results of -[[class alloc] init] rather than retaining them.
     9
     10        * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
     11        (WebCore::SourceBufferPrivateAVFObjC::hasVideo):
     12        (WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):
     13
    1142014-04-21  Zalan Bujtas  <zalan@apple.com>
    215
  • trunk/Source/WebCore/platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm

    r165676 r167639  
    544544        [m_parser setShouldProvideMediaData:YES forTrackID:trackID];
    545545        if (!m_displayLayer) {
    546             m_displayLayer = [[getAVSampleBufferDisplayLayerClass() alloc] init];
     546            m_displayLayer = adoptNS([[getAVSampleBufferDisplayLayerClass() alloc] init]);
    547547            [m_displayLayer requestMediaDataWhenReadyOnQueue:dispatch_get_main_queue() usingBlock:^{
    548548                didBecomeReadyForMoreSamples(trackID);
     
    565565    } else {
    566566        [m_parser setShouldProvideMediaData:YES forTrackID:trackID];
    567         AVSampleBufferAudioRenderer* renderer;
     567        RetainPtr<AVSampleBufferAudioRenderer> renderer;
    568568        if (!m_audioRenderers.count(trackID)) {
    569             renderer = [[getAVSampleBufferAudioRendererClass() alloc] init];
     569            renderer = adoptNS([[getAVSampleBufferAudioRendererClass() alloc] init]);
    570570            [renderer requestMediaDataWhenReadyOnQueue:dispatch_get_main_queue() usingBlock:^{
    571571                didBecomeReadyForMoreSamples(trackID);
     
    576576
    577577        if (m_mediaSource)
    578             m_mediaSource->player()->addAudioRenderer(renderer);
     578            m_mediaSource->player()->addAudioRenderer(renderer.get());
    579579    }
    580580}
Note: See TracChangeset for help on using the changeset viewer.