diff options
| author | 2014-10-31 22:55:46 +0000 | |
|---|---|---|
| committer | 2014-10-31 22:55:47 +0000 | |
| commit | a8d83d639a5687b2ab5689db4ea61e2a6cce66f4 (patch) | |
| tree | e8441152d52d9388d9db09e039e3797cc2e38295 /libs/hwui/RenderNode.cpp | |
| parent | f34fa3e7aa9be9bf24c955a9ebf34022e4b88c25 (diff) | |
| parent | 0e89e2b7bcb2c035e8cee77f93120e7c5617f8d2 (diff) | |
Merge "Layer changes" into lmp-mr1-dev
Diffstat (limited to 'libs/hwui/RenderNode.cpp')
| -rw-r--r-- | libs/hwui/RenderNode.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/libs/hwui/RenderNode.cpp b/libs/hwui/RenderNode.cpp index 40cd13ef4f02..c9ed9a7d780b 100644 --- a/libs/hwui/RenderNode.cpp +++ b/libs/hwui/RenderNode.cpp @@ -87,7 +87,11 @@ RenderNode::RenderNode() RenderNode::~RenderNode() { deleteDisplayListData(); delete mStagingDisplayListData; - LayerRenderer::destroyLayerDeferred(mLayer); + if (mLayer) { + ALOGW("Memory Warning: Layer %p missed its detachment, held on to for far too long!", mLayer); + mLayer->postDecStrong(); + mLayer = 0; + } } void RenderNode::setStagingDisplayList(DisplayListData* data) { @@ -201,6 +205,7 @@ void RenderNode::pushLayerUpdate(TreeInfo& info) { info.damageAccumulator->peekAtDirty(&dirty); if (!mLayer) { + Caches::getInstance().dumpMemoryUsage(); if (info.errorHandler) { std::string msg = "Unable to create layer for "; msg += getName(); |