diff options
Diffstat (limited to 'WebCore/platform/graphics/android/LayerAndroid.cpp')
-rw-r--r-- | WebCore/platform/graphics/android/LayerAndroid.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/WebCore/platform/graphics/android/LayerAndroid.cpp b/WebCore/platform/graphics/android/LayerAndroid.cpp index 89ce301..33d98ea 100644 --- a/WebCore/platform/graphics/android/LayerAndroid.cpp +++ b/WebCore/platform/graphics/android/LayerAndroid.cpp @@ -186,9 +186,13 @@ bool LayerAndroid::removeTexture(BackedDoubleBufferedTexture* aTexture) m_reservedTexture != m_drawingTexture) textureReleased &= m_reservedTexture->release(this); } - if (m_drawingTexture && m_drawingTexture->owner() != this) + if (m_drawingTexture && + ((m_drawingTexture->owner() != this) || + (m_drawingTexture->delayedReleaseOwner() == this))) m_drawingTexture = 0; - if (m_reservedTexture && m_reservedTexture->owner() != this) + if (m_reservedTexture && + ((m_reservedTexture->owner() != this) || + (m_reservedTexture->delayedReleaseOwner() == this))) m_reservedTexture = 0; return textureReleased; } |