diff options
author | Nicolas Roard <nicolasroard@google.com> | 2011-03-21 07:49:53 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2011-03-21 07:49:53 -0700 |
commit | 57d7bbd715c228221d6fea31c955dfc20a1b3b00 (patch) | |
tree | 5e2773f74fd4edfe73aa014a7fc45e9015557c18 /WebCore/platform/graphics/android/LayerAndroid.cpp | |
parent | 0602eb9bef22bcf1adf5fc0077aadd8f39f764c6 (diff) | |
parent | 9f6d6cba4bd687bc65baa3db29ac4f6593df65c1 (diff) | |
download | external_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.cpp | 14 |
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(); |