Title: [108825] trunk/Source/WebCore
- Revision
- 108825
- Author
- [email protected]
- Date
- 2012-02-24 11:06:34 -0800 (Fri, 24 Feb 2012)
Log Message
Crash in TileCache::revalidateTiles
https://bugs.webkit.org/show_bug.cgi?id=79510
<rdar://problem/10928035>
Reviewed by Sam Weinig.
Handle the tile cache layer's PlatformCALayer going away before the
CALayer itself has been deallocated.
* platform/graphics/ca/mac/TileCache.mm:
(WebCore::TileCache::revalidateTiles):
Modified Paths
Diff
Modified: trunk/Source/WebCore/ChangeLog (108824 => 108825)
--- trunk/Source/WebCore/ChangeLog 2012-02-24 19:06:29 UTC (rev 108824)
+++ trunk/Source/WebCore/ChangeLog 2012-02-24 19:06:34 UTC (rev 108825)
@@ -1,3 +1,17 @@
+2012-02-24 Anders Carlsson <[email protected]>
+
+ Crash in TileCache::revalidateTiles
+ https://bugs.webkit.org/show_bug.cgi?id=79510
+ <rdar://problem/10928035>
+
+ Reviewed by Sam Weinig.
+
+ Handle the tile cache layer's PlatformCALayer going away before the
+ CALayer itself has been deallocated.
+
+ * platform/graphics/ca/mac/TileCache.mm:
+ (WebCore::TileCache::revalidateTiles):
+
2012-02-24 Adam Klein <[email protected]>
Don't notify the inspector of Node insertions initiated by the parser
Modified: trunk/Source/WebCore/platform/graphics/ca/mac/TileCache.mm (108824 => 108825)
--- trunk/Source/WebCore/platform/graphics/ca/mac/TileCache.mm 2012-02-24 19:06:29 UTC (rev 108824)
+++ trunk/Source/WebCore/platform/graphics/ca/mac/TileCache.mm 2012-02-24 19:06:34 UTC (rev 108825)
@@ -275,6 +275,12 @@
void TileCache::revalidateTiles()
{
+ // If the underlying PlatformLayer has been destroyed, but the WebTileCacheLayer hasn't
+ // platformLayer will be null here.
+ PlatformCALayer* platformLayer = PlatformCALayer::platformCALayer(m_tileCacheLayer);
+ if (!platformLayer)
+ return;
+
IntRect tileCoverageRect = enclosingIntRect(visibleRect());
if (tileCoverageRect.isEmpty())
return;
@@ -343,7 +349,6 @@
if (!didCreateNewTiles)
return;
- PlatformCALayer* platformLayer = PlatformCALayer::platformCALayer(m_tileCacheLayer);
platformLayer->owner()->platformCALayerDidCreateTiles();
}
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes