Avoid deadlock when deleting layers
Bug #7217459

Change-Id: I12bfa6c30c5030bd1b23ea6a3ce64240ab1dfba3
diff --git a/libs/hwui/Layer.cpp b/libs/hwui/Layer.cpp
index 76b274b..fb525ee 100644
--- a/libs/hwui/Layer.cpp
+++ b/libs/hwui/Layer.cpp
@@ -50,6 +50,13 @@
     deleteTexture();
 }
 
+void Layer::freeResourcesLocked() {
+    if (colorFilter) {
+        Caches::getInstance().resourceCache.decrementRefcountLocked(colorFilter);
+        colorFilter = NULL;
+    }
+}
+
 void Layer::setPaint(SkPaint* paint) {
     OpenGLRenderer::getAlphaAndModeDirect(paint, &alpha, &mode);
 }