summaryrefslogtreecommitdiff
path: root/libs/hwui/LayerCache.cpp
diff options
context:
space:
mode:
author Chris Craik <ccraik@google.com> 2014-09-10 13:04:31 -0700
committer Chris Craik <ccraik@google.com> 2014-09-10 16:10:24 -0700
commitbfd1cd620991ac2fa9202fdce6c00ec47d071935 (patch)
treecc0460e5066d0a765610fb5eb4a3e30ef9bc28a5 /libs/hwui/LayerCache.cpp
parentfc81bfe3fb43296ca7040b8f259e1cbec50898ca (diff)
Additional layer logging
bug:17208461 Track layer's last known state. Change-Id: Ic1799191f5839a1d6cc56f598f2ac2671dc27a6f
Diffstat (limited to 'libs/hwui/LayerCache.cpp')
-rw-r--r--libs/hwui/LayerCache.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/libs/hwui/LayerCache.cpp b/libs/hwui/LayerCache.cpp
index d49daf61bb8a..833f64bc96e7 100644
--- a/libs/hwui/LayerCache.cpp
+++ b/libs/hwui/LayerCache.cpp
@@ -83,6 +83,7 @@ void LayerCache::deleteLayer(Layer* layer) {
LAYER_LOGD("Destroying layer %dx%d, fbo %d", layer->getWidth(), layer->getHeight(),
layer->getFbo());
mSize -= layer->getWidth() * layer->getHeight() * 4;
+ layer->state = Layer::kState_DeletedFromCache;
Caches::getInstance().resourceCache.decrementRefcount(layer);
}
}
@@ -106,6 +107,7 @@ Layer* LayerCache::get(RenderState& renderState, const uint32_t width, const uin
mCache.removeAt(index);
layer = entry.mLayer;
+ layer->state = Layer::kState_RemovedFromCache;
mSize -= layer->getWidth() * layer->getHeight() * 4;
LAYER_LOGD("Reusing layer %dx%d", layer->getWidth(), layer->getHeight());
@@ -166,8 +168,11 @@ bool LayerCache::put(Layer* layer) {
mCache.add(entry);
mSize += size;
+ layer->state = Layer::kState_InCache;
return true;
}
+
+ layer->state = Layer::kState_FailedToCache;
return false;
}