diff options
author | Omprakash Dhyade <odhyade@codeaurora.org> | 2012-03-03 19:36:23 -0800 |
---|---|---|
committer | Steve Kondik <shade@chemlab.org> | 2012-07-02 00:01:23 -0700 |
commit | 9d105961ac85d81d5354e4634bec12adeddccff6 (patch) | |
tree | bbc58522122ce1bb67f47e235605c608c544ee97 /libs | |
parent | 9ba2de56e07106926118d4b719a8357733cbdbec (diff) | |
download | frameworks_base-9d105961ac85d81d5354e4634bec12adeddccff6.zip frameworks_base-9d105961ac85d81d5354e4634bec12adeddccff6.tar.gz frameworks_base-9d105961ac85d81d5354e4634bec12adeddccff6.tar.bz2 |
framework/base: hwui: Clear layer FBO after FBO cache is updated
Due to bug in GLRenderer stale FBO remains and can cause
corruption, clear layer fbo when fbo returned to cache.
CRs-fixed: 340481
(cherry picked from commit b01c082e12c4c4091016af1c95d851f29f5b7514)
Conflicts:
libs/hwui/LayerRenderer.cpp
Change-Id: I8624879b4adbf9438a8c065b78932d1a4a2a15d4
Diffstat (limited to 'libs')
-rw-r--r-- | libs/hwui/LayerRenderer.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/libs/hwui/LayerRenderer.cpp b/libs/hwui/LayerRenderer.cpp index e38b479..94d3fab 100644 --- a/libs/hwui/LayerRenderer.cpp +++ b/libs/hwui/LayerRenderer.cpp @@ -221,6 +221,7 @@ Layer* LayerRenderer::createLayer(uint32_t width, uint32_t height, bool isOpaque glBindFramebuffer(GL_FRAMEBUFFER, previousFbo); Caches::getInstance().fboCache.put(fbo); + layer->setFbo(0); layer->deleteTexture(); delete layer; @@ -307,6 +308,7 @@ void LayerRenderer::destroyLayer(Layer* layer) { if (layer->getFbo()) { Caches::getInstance().fboCache.put(layer->getFbo()); + layer->setFbo(0); } if (!Caches::getInstance().layerCache.put(layer)) { |