Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9d105961 authored by Omprakash Dhyade's avatar Omprakash Dhyade Committed by Steve Kondik
Browse files

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
parent 9ba2de56
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -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)) {