summaryrefslogtreecommitdiffstats
path: root/WebCore/platform/graphics/android/LayerAndroid.cpp
diff options
context:
space:
mode:
authorNicolas Roard <nicolasroard@google.com>2011-03-21 07:49:53 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2011-03-21 07:49:53 -0700
commit57d7bbd715c228221d6fea31c955dfc20a1b3b00 (patch)
tree5e2773f74fd4edfe73aa014a7fc45e9015557c18 /WebCore/platform/graphics/android/LayerAndroid.cpp
parent0602eb9bef22bcf1adf5fc0077aadd8f39f764c6 (diff)
parent9f6d6cba4bd687bc65baa3db29ac4f6593df65c1 (diff)
downloadexternal_webkit-57d7bbd715c228221d6fea31c955dfc20a1b3b00.zip
external_webkit-57d7bbd715c228221d6fea31c955dfc20a1b3b00.tar.gz
external_webkit-57d7bbd715c228221d6fea31c955dfc20a1b3b00.tar.bz2
am 9f6d6cba: am e1c3e599: Fix native crash Don\'t save the extras in the picture when drawing.
* commit '9f6d6cba4bd687bc65baa3db29ac4f6593df65c1': Fix native crash Don't save the extras in the picture when drawing.
Diffstat (limited to 'WebCore/platform/graphics/android/LayerAndroid.cpp')
-rw-r--r--WebCore/platform/graphics/android/LayerAndroid.cpp14
1 files changed, 9 insertions, 5 deletions
diff --git a/WebCore/platform/graphics/android/LayerAndroid.cpp b/WebCore/platform/graphics/android/LayerAndroid.cpp
index 2df63a9..dba1ceb 100644
--- a/WebCore/platform/graphics/android/LayerAndroid.cpp
+++ b/WebCore/platform/graphics/android/LayerAndroid.cpp
@@ -1033,6 +1033,7 @@ void LayerAndroid::paintBitmapGL()
contentDraw(nCanvas);
picture.endRecording();
picture.draw(canvas);
+ extraDraw(canvas);
m_atomicSync.lock();
texture->setTextureInfoFor(this);
@@ -1048,6 +1049,14 @@ void LayerAndroid::paintBitmapGL()
XLOG("LayerAndroid %d paintBitmapGL UPDATING DONE", uniqueId());
}
+void LayerAndroid::extraDraw(SkCanvas* canvas)
+{
+ m_atomicSync.lock();
+ if (m_extra)
+ canvas->drawPicture(*m_extra);
+ m_atomicSync.unlock();
+}
+
void LayerAndroid::contentDraw(SkCanvas* canvas)
{
if (m_contentsImage) {
@@ -1058,11 +1067,6 @@ void LayerAndroid::contentDraw(SkCanvas* canvas)
canvas->drawPicture(*m_recordingPicture);
}
- m_atomicSync.lock();
- if (m_extra)
- canvas->drawPicture(*m_extra);
- m_atomicSync.unlock();
-
if (TilesManager::instance()->getShowVisualIndicator()) {
float w = getSize().width();
float h = getSize().height();