summaryrefslogtreecommitdiff
path: root/libs/hwui/OpenGLRenderer.cpp
diff options
context:
space:
mode:
author Romain Guy <romainguy@google.com> 2013-06-17 20:39:45 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2013-06-17 20:39:45 +0000
commitfb5c9050978afad2c1df570a13a6747f438c27f7 (patch)
tree5ad303b8842436dccb104e46d19aea14d5617cfb /libs/hwui/OpenGLRenderer.cpp
parent61e1ca68fa82e5228b5bfcdad8deecd9383fb183 (diff)
parente93482f5eac3df581d57e64c2a771a96aa868585 (diff)
Merge "Cancel layer update when a layer is about to be destroyed Bug #9310706"
Diffstat (limited to 'libs/hwui/OpenGLRenderer.cpp')
-rw-r--r--libs/hwui/OpenGLRenderer.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp
index 91cc4e04c4f5..5cf029dc4ab5 100644
--- a/libs/hwui/OpenGLRenderer.cpp
+++ b/libs/hwui/OpenGLRenderer.cpp
@@ -655,6 +655,18 @@ void OpenGLRenderer::pushLayerUpdate(Layer* layer) {
}
}
+void OpenGLRenderer::cancelLayerUpdate(Layer* layer) {
+ if (layer) {
+ for (int i = mLayerUpdates.size() - 1; i >= 0; i--) {
+ if (mLayerUpdates.itemAt(i) == layer) {
+ mLayerUpdates.removeAt(i);
+ mCaches.resourceCache.decrementRefcount(layer);
+ break;
+ }
+ }
+ }
+}
+
void OpenGLRenderer::clearLayerUpdates() {
size_t count = mLayerUpdates.size();
if (count > 0) {