summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform/graphics/android/PaintTileOperation.cpp
diff options
context:
space:
mode:
authorNicolas Roard <nicolasroard@google.com>2011-08-04 16:11:02 -0700
committerNicolas Roard <nicolasroard@google.com>2011-08-04 16:58:57 -0700
commit8c8109615ff2d833bbcf6866e935e91188c00556 (patch)
treea8462b905def1ba9a70696d8a204bc6bff193f50 /Source/WebCore/platform/graphics/android/PaintTileOperation.cpp
parent82b16301ec89989ef436f317f2f23f57ed2e2660 (diff)
downloadexternal_webkit-8c8109615ff2d833bbcf6866e935e91188c00556.zip
external_webkit-8c8109615ff2d833bbcf6866e935e91188c00556.tar.gz
external_webkit-8c8109615ff2d833bbcf6866e935e91188c00556.tar.bz2
Fixes layers painting crashes
bug:5097230 bug:5045149 Change-Id: I20fcae13e7f617658447c02bd51dc83d2914922e
Diffstat (limited to 'Source/WebCore/platform/graphics/android/PaintTileOperation.cpp')
-rw-r--r--Source/WebCore/platform/graphics/android/PaintTileOperation.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/Source/WebCore/platform/graphics/android/PaintTileOperation.cpp b/Source/WebCore/platform/graphics/android/PaintTileOperation.cpp
index 8abd250..d5623df 100644
--- a/Source/WebCore/platform/graphics/android/PaintTileOperation.cpp
+++ b/Source/WebCore/platform/graphics/android/PaintTileOperation.cpp
@@ -25,15 +25,18 @@
#include "config.h"
#include "PaintTileOperation.h"
+#include "LayerAndroid.h"
namespace WebCore {
-PaintTileOperation::PaintTileOperation(BaseTile* tile)
+PaintTileOperation::PaintTileOperation(BaseTile* tile, LayerAndroid* layer)
: QueuedOperation(QueuedOperation::PaintTile, tile->page())
, m_tile(tile)
+ , m_layer(layer)
{
if (m_tile)
m_tile->setRepaintPending(true);
+ SkSafeRef(m_layer);
}
PaintTileOperation::~PaintTileOperation()
@@ -42,6 +45,7 @@ PaintTileOperation::~PaintTileOperation()
m_tile->setRepaintPending(false);
m_tile = 0;
}
+ SkSafeUnref(m_layer);
}
bool PaintTileOperation::operator==(const QueuedOperation* operation)