diff options
| author | 2012-09-25 20:30:09 -0700 | |
|---|---|---|
| committer | 2012-09-25 20:30:09 -0700 | |
| commit | 56257aff8a55c847be72be9924c392033fd8151d (patch) | |
| tree | 5e31b76ebbf03e281ccaeceec24882660e7de47e /libs/hwui/Layer.cpp | |
| parent | 8a1374946a928fcba7495c87ff6adda327fdfb9f (diff) | |
Revert "Deleting objects on the wrong thread is a silly idea Bug #7195815"
This reverts commit 8a1374946a928fcba7495c87ff6adda327fdfb9f
Change-Id: I53564a6c531d334afcc1fce0bea1e57ae266aa78
Diffstat (limited to 'libs/hwui/Layer.cpp')
| -rw-r--r-- | libs/hwui/Layer.cpp | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/libs/hwui/Layer.cpp b/libs/hwui/Layer.cpp index cd2e57131c9f..fb525ee428ac 100644 --- a/libs/hwui/Layer.cpp +++ b/libs/hwui/Layer.cpp @@ -19,7 +19,6 @@ #include <utils/Log.h> #include "Layer.h" -#include "LayerRenderer.h" #include "OpenGLRenderer.h" #include "Caches.h" @@ -47,14 +46,17 @@ Layer::~Layer() { if (mesh) delete mesh; if (meshIndices) delete meshIndices; if (colorFilter) Caches::getInstance().resourceCache.decrementRefcount(colorFilter); - if (fbo) { - LayerRenderer::flushLayer(this); - Caches::getInstance().fboCache.put(fbo); - fbo = 0; - } + if (fbo) Caches::getInstance().fboCache.put(fbo); deleteTexture(); } +void Layer::freeResourcesLocked() { + if (colorFilter) { + Caches::getInstance().resourceCache.decrementRefcountLocked(colorFilter); + colorFilter = NULL; + } +} + void Layer::setPaint(SkPaint* paint) { OpenGLRenderer::getAlphaAndModeDirect(paint, &alpha, &mode); } @@ -69,5 +71,7 @@ void Layer::setColorFilter(SkiaColorFilter* filter) { } } + + }; // namespace uirenderer }; // namespace android |