Changeset 85248 in webkit


Ignore:
Timestamp:
Apr 28, 2011 3:31:04 PM (13 years ago)
Author:
ddkilzer@apple.com
Message:

<http://webkit.org/b/59725> -[WebFullscreenWindow initWithContentRect:styleMask:backing:defer:] leaks a CALayer

Reviewed by Dan Bernstein.

  • WebView/WebFullScreenController.mm:

(-[WebFullscreenWindow initWithContentRect:styleMask:backing:defer:]):
Use a RetainPtr to hold the CALayer and to fix the leak.

Location:
trunk/Source/WebKit/mac
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebKit/mac/ChangeLog

    r85237 r85248  
     12011-04-28  David Kilzer  <ddkilzer@apple.com>
     2
     3        <http://webkit.org/b/59725> -[WebFullscreenWindow initWithContentRect:styleMask:backing:defer:] leaks a CALayer
     4
     5        Reviewed by Dan Bernstein.
     6
     7        * WebView/WebFullScreenController.mm:
     8        (-[WebFullscreenWindow initWithContentRect:styleMask:backing:defer:]):
     9        Use a RetainPtr to hold the CALayer and to fix the leak.
     10
    1112011-04-28  David Kilzer  <ddkilzer@apple.com>
    212
  • trunk/Source/WebKit/mac/WebView/WebFullScreenController.mm

    r85081 r85248  
    5353#import <WebCore/RenderLayerBacking.h>
    5454#import <objc/objc-runtime.h>
     55#import <wtf/RetainPtr.h>
    5556#import <wtf/UnusedParam.h>
    5657
     
    800801    _animationView = [[NSView alloc] initWithFrame:[contentView bounds]];
    801802   
    802     CALayer* contentLayer = [[CALayer alloc] init];
    803     [_animationView setLayer:contentLayer];
     803    RetainPtr<CALayer> contentLayer(AdoptNS, [[CALayer alloc] init]);
     804    [_animationView setLayer:contentLayer.get()];
    804805    [_animationView setWantsLayer:YES];
    805806    [_animationView setAutoresizingMask:NSViewWidthSizable|NSViewHeightSizable];
     
    807808   
    808809    _backgroundLayer = [[CALayer alloc] init];
    809     [contentLayer addSublayer:_backgroundLayer];
     810    [contentLayer.get() addSublayer:_backgroundLayer];
    810811#ifndef BUILDING_ON_LEOPARD
    811     [contentLayer setGeometryFlipped:YES];
     812    [contentLayer.get() setGeometryFlipped:YES];
    812813#else
    813     [contentLayer setSublayerTransform:CATransform3DMakeScale(1, -1, 1)];
     814    [contentLayer.get() setSublayerTransform:CATransform3DMakeScale(1, -1, 1)];
    814815#endif
    815     [contentLayer setOpacity:0];
     816    [contentLayer.get() setOpacity:0];
    816817   
    817818    [_backgroundLayer setBackgroundColor:CGColorGetConstantColor(kCGColorBlack)];
Note: See TracChangeset for help on using the changeset viewer.