From 97dc9172b0e58979c63de0dedbab656399a62281 Mon Sep 17 00:00:00 2001 From: Romain Guy Date: Sun, 23 Sep 2012 17:46:45 -0700 Subject: Avoid deadlock when deleting layers Bug #7217459 Change-Id: I12bfa6c30c5030bd1b23ea6a3ce64240ab1dfba3 --- libs/hwui/Layer.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'libs/hwui/Layer.cpp') diff --git a/libs/hwui/Layer.cpp b/libs/hwui/Layer.cpp index 76b274b00443..fb525ee428ac 100644 --- a/libs/hwui/Layer.cpp +++ b/libs/hwui/Layer.cpp @@ -50,6 +50,13 @@ Layer::~Layer() { deleteTexture(); } +void Layer::freeResourcesLocked() { + if (colorFilter) { + Caches::getInstance().resourceCache.decrementRefcountLocked(colorFilter); + colorFilter = NULL; + } +} + void Layer::setPaint(SkPaint* paint) { OpenGLRenderer::getAlphaAndModeDirect(paint, &alpha, &mode); } -- cgit v1.2.3-59-g8ed1b