Title: [117664] trunk/Source/WebCore
Revision
117664
Author
[email protected]
Date
2012-05-18 18:13:55 -0700 (Fri, 18 May 2012)

Log Message

[chromium] Add diagnostic CRASH calls for tiler crashes
https://bugs.webkit.org/show_bug.cgi?id=86930

Reviewed by James Robinson.

These lines would normally crash on their own due to null pointers,
but having an explicit CRASH call will help us differentiate what the
real problem might be in the crash report.

* platform/graphics/chromium/TiledLayerChromium.cpp:
(WebCore::TiledLayerChromium::createTile):
(WebCore::TiledLayerChromium::updateTiles):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (117663 => 117664)


--- trunk/Source/WebCore/ChangeLog	2012-05-19 01:11:12 UTC (rev 117663)
+++ trunk/Source/WebCore/ChangeLog	2012-05-19 01:13:55 UTC (rev 117664)
@@ -1,3 +1,18 @@
+2012-05-18  Adrienne Walker  <[email protected]>
+
+        [chromium] Add diagnostic CRASH calls for tiler crashes
+        https://bugs.webkit.org/show_bug.cgi?id=86930
+
+        Reviewed by James Robinson.
+
+        These lines would normally crash on their own due to null pointers,
+        but having an explicit CRASH call will help us differentiate what the
+        real problem might be in the crash report.
+
+        * platform/graphics/chromium/TiledLayerChromium.cpp:
+        (WebCore::TiledLayerChromium::createTile):
+        (WebCore::TiledLayerChromium::updateTiles):
+
 2012-05-18  Aaron Colwell  <[email protected]>
 
         Update Media Source implementation to reflect changes in 0.5 spec.

Modified: trunk/Source/WebCore/platform/graphics/chromium/TiledLayerChromium.cpp (117663 => 117664)


--- trunk/Source/WebCore/platform/graphics/chromium/TiledLayerChromium.cpp	2012-05-19 01:11:12 UTC (rev 117663)
+++ trunk/Source/WebCore/platform/graphics/chromium/TiledLayerChromium.cpp	2012-05-19 01:13:55 UTC (rev 117664)
@@ -261,6 +261,13 @@
     m_tiler->addTile(tile.release(), i, j);
 
     addedTile->dirtyRect = m_tiler->tileRect(addedTile);
+
+    // Temporary diagnostic crash.
+    if (!addedTile)
+        CRASH();
+    if (!tileAt(i, j))
+        CRASH();
+
     return addedTile;
 }
 
@@ -363,6 +370,10 @@
             if (!tile)
                 tile = createTile(i, j);
 
+            // Temporary diagnostic crash
+            if (!m_tiler)
+                CRASH();
+
             if (!tile->managedTexture()->isValid(m_tiler->tileSize(), m_textureFormat)) {
                 // Sets the dirty rect to a full-sized tile with border texels.
                 tile->dirtyRect = m_tiler->tileRect(tile);
@@ -412,6 +423,8 @@
     for (int j = top; j <= bottom; ++j) {
         for (int i = left; i <= right; ++i) {
             UpdatableTile* tile = tileAt(i, j);
+            if (!tile)
+                CRASH();
             if (tile->updated)
                 tile->copyAndClearDirty();
             else if (!idle && occlusion && tile->isDirty())
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to