summaryrefslogtreecommitdiffstats
path: root/WebCore/platform/graphics/android/DoubleBufferedTexture.cpp
diff options
context:
space:
mode:
authorDerek Sollenberger <djsollen@google.com>2011-03-23 12:43:46 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2011-03-23 12:43:46 -0700
commit16c80237214715ba15e45748164ecd02a558a138 (patch)
tree4667dd2b39c9f9ce8e9bda96420707802bb05157 /WebCore/platform/graphics/android/DoubleBufferedTexture.cpp
parentf58a40bf15e13380b82713b5b229a9bf57fe4b0e (diff)
parentf32b2ce68c45663b1193cfe45a10d2889fd61c81 (diff)
downloadexternal_webkit-16c80237214715ba15e45748164ecd02a558a138.zip
external_webkit-16c80237214715ba15e45748164ecd02a558a138.tar.gz
external_webkit-16c80237214715ba15e45748164ecd02a558a138.tar.bz2
am f32b2ce6: Fix GPU leak where plugin textures in the WebKit thread were not being deleted.
* commit 'f32b2ce68c45663b1193cfe45a10d2889fd61c81': Fix GPU leak where plugin textures in the WebKit thread were not being deleted.
Diffstat (limited to 'WebCore/platform/graphics/android/DoubleBufferedTexture.cpp')
-rw-r--r--WebCore/platform/graphics/android/DoubleBufferedTexture.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/WebCore/platform/graphics/android/DoubleBufferedTexture.cpp b/WebCore/platform/graphics/android/DoubleBufferedTexture.cpp
index 7dcd1bc..cf640e8 100644
--- a/WebCore/platform/graphics/android/DoubleBufferedTexture.cpp
+++ b/WebCore/platform/graphics/android/DoubleBufferedTexture.cpp
@@ -102,6 +102,18 @@ EGLContext DoubleBufferedTexture::producerAcquireContext()
return context;
}
+void DoubleBufferedTexture::producerDeleteTextures()
+{
+ m_textureA.lock();
+ m_textureB.lock();
+ LOGV("Deleting Producer Textures A/B (%d:%d)", m_textureA.getSourceTextureId(),
+ m_textureB.getSourceTextureId());
+ m_textureA.deleteSourceTexture();
+ m_textureB.deleteSourceTexture();
+ m_textureA.unlock();
+ m_textureB.unlock();
+}
+
TextureInfo* DoubleBufferedTexture::producerLock()
{
SharedTexture* sharedTex = getWriteableTexture();