diff options
author | Nicolas Roard <nicolas@android.com> | 2011-02-10 19:33:59 -0800 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2011-02-10 19:33:59 -0800 |
commit | f683cf60e404c2664a013ef2d4ffda87c4dfacdf (patch) | |
tree | b1b5680338ca7f6b9f19848e9556f3264e9a1850 /WebCore/platform/graphics/android/BaseTile.cpp | |
parent | 246ea84a226462854f9c876c8dd03665271b3f78 (diff) | |
parent | 81ec1fafcb2c1bc433ec34b6ae4ea78d1ea7d3a8 (diff) | |
download | external_webkit-f683cf60e404c2664a013ef2d4ffda87c4dfacdf.zip external_webkit-f683cf60e404c2664a013ef2d4ffda87c4dfacdf.tar.gz external_webkit-f683cf60e404c2664a013ef2d4ffda87c4dfacdf.tar.bz2 |
Merge "Fix ANR in the browser Sometimes we were not releasing textures as they were busy; they could still be deleted when swapping the layers trees, and as they were also still present in the LayerTexture Hashmap this was causing an ANR (at best -- the texture was already deallocated, the LayerTexture dtor was then trying to release() them...)"
Diffstat (limited to 'WebCore/platform/graphics/android/BaseTile.cpp')
-rw-r--r-- | WebCore/platform/graphics/android/BaseTile.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/WebCore/platform/graphics/android/BaseTile.cpp b/WebCore/platform/graphics/android/BaseTile.cpp index 960d073..e5275c6 100644 --- a/WebCore/platform/graphics/android/BaseTile.cpp +++ b/WebCore/platform/graphics/android/BaseTile.cpp @@ -107,13 +107,14 @@ void BaseTile::reserveTexture() m_texture = texture; } -void BaseTile::removeTexture(BackedDoubleBufferedTexture* texture) +bool BaseTile::removeTexture(BackedDoubleBufferedTexture* texture) { XLOG("%x removeTexture res: %x... page %x", this, m_texture, m_page); // We update atomically, so paintBitmap() can see the correct value android::AutoMutex lock(m_atomicSync); if (m_texture == texture) m_texture = 0; + return true; } void BaseTile::setScale(float scale) |