summaryrefslogtreecommitdiffstats
path: root/libs/hwui/Caches.h
diff options
context:
space:
mode:
authorRomain Guy <romainguy@google.com>2013-06-06 14:02:54 -0700
committerRomain Guy <romainguy@google.com>2013-06-06 16:26:51 -0700
commitbe1b127c7bec252e0c6ab0e06ed6babed07d496f (patch)
treeeaab57886d7cd44e10da155d3dc6188a30b2b17b /libs/hwui/Caches.h
parentf69913056b8c6000ff0306573a97971702e8d35a (diff)
downloadframeworks_base-be1b127c7bec252e0c6ab0e06ed6babed07d496f.zip
frameworks_base-be1b127c7bec252e0c6ab0e06ed6babed07d496f.tar.gz
frameworks_base-be1b127c7bec252e0c6ab0e06ed6babed07d496f.tar.bz2
Assume a texture is unbound after deleting it
Bug #9316260 The GL specification indicates that deleting a bound texture has the side effect of binding the default texture (name=0). This change replaces all calls to glDeleteTextures() by Caches::deleteTexture() to properly keep track of texture bindings. Change-Id: Ifbc60ef433e0f9776a668dd5bd5f0adbc65a77a0
Diffstat (limited to 'libs/hwui/Caches.h')
-rw-r--r--libs/hwui/Caches.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/libs/hwui/Caches.h b/libs/hwui/Caches.h
index bd31ec3..bdde8fb 100644
--- a/libs/hwui/Caches.h
+++ b/libs/hwui/Caches.h
@@ -226,15 +226,26 @@ public:
/**
* Binds the specified texture as a GL_TEXTURE_2D texture.
+ * All texture bindings must be performed with this method or
+ * bindTexture(GLenum, GLuint).
*/
void bindTexture(GLuint texture);
/**
- * Binds the specified texture..
+ * Binds the specified texture with the specified render target.
+ * All texture bindings must be performed with this method or
+ * bindTexture(GLuint).
*/
void bindTexture(GLenum target, GLuint texture);
/**
+ * Deletes the specified texture and clears it from the cache
+ * of bound textures.
+ * All textures must be deleted using this method.
+ */
+ void deleteTexture(GLuint texture);
+
+ /**
* Signals that the cache of bound textures should be cleared.
* Other users of the context may have altered which textures are bound.
*/