Changeset 109486 in webkit


Ignore:
Timestamp:
Mar 1, 2012 7:11:56 PM (12 years ago)
Author:
andersca@apple.com
Message:

Crash when doing repeated double-tap-to-zoom gesture on apple startpage
https://bugs.webkit.org/show_bug.cgi?id=80081
<rdar://problem/10966391>

Reviewed by Sam Weinig.

Setting the contents scale on the tile cache layer was creating a WebTileCacheLayer presentation layer copy with a null _tileCache.

Implement -[WebTileCacheLayer actionForKey:] and have it always return nil so we'll avoid implicit animations, and thus creating presentation layers.

  • platform/graphics/ca/mac/WebTileCacheLayer.mm:

(-[WebTileCacheLayer initWithLayer:]):
Implement this and assert that it's never reached. We should never create presentation layers since we don't animate this layer.

(-[WebTileCacheLayer actionForKey:]):
Implement this and always return nil.

Location:
trunk/Source/WebCore
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/WebCore/ChangeLog

    r109483 r109486  
     12012-03-01  Anders Carlsson  <andersca@apple.com>
     2
     3        Crash when doing repeated double-tap-to-zoom gesture on apple startpage
     4        https://bugs.webkit.org/show_bug.cgi?id=80081
     5        <rdar://problem/10966391>
     6
     7        Reviewed by Sam Weinig.
     8
     9        Setting the contents scale on the tile cache layer was creating a WebTileCacheLayer presentation layer copy with a null _tileCache.
     10
     11        Implement -[WebTileCacheLayer actionForKey:] and have it always return nil so we'll avoid implicit animations, and thus creating presentation layers.
     12
     13        * platform/graphics/ca/mac/WebTileCacheLayer.mm:
     14        (-[WebTileCacheLayer initWithLayer:]):
     15        Implement this and assert that it's never reached. We should never create presentation layers since we don't animate this layer.
     16
     17        (-[WebTileCacheLayer actionForKey:]):
     18        Implement this and always return nil.
     19
    1202012-03-01  Hajime Morrita  <morrita@chromium.org>
    221
  • trunk/Source/WebCore/platform/graphics/ca/mac/WebTileCacheLayer.mm

    r107891 r109486  
    5757
    5858    [super dealloc];
     59}
     60
     61- (id)initWithLayer:(id)layer
     62{
     63    UNUSED_PARAM(layer);
     64
     65    ASSERT_NOT_REACHED();
     66    return nil;
     67}
     68
     69- (id<CAAction>)actionForKey:(NSString *)key
     70{
     71    UNUSED_PARAM(key);
     72   
     73    // Disable all animations.
     74    return nil;
    5975}
    6076
Note: See TracChangeset for help on using the changeset viewer.