summaryrefslogtreecommitdiff
path: root/libs/hwui/RenderState.cpp
diff options
context:
space:
mode:
author John Reck <jreck@google.com> 2014-09-05 01:06:07 +0000
committer Android (Google) Code Review <android-gerrit@google.com> 2014-09-05 01:06:08 +0000
commit6dad93eff6cb62aded9d07bc3381cf1cbea468b9 (patch)
tree70bdff3ab45d42d81468fc4930a02f639043d6a5 /libs/hwui/RenderState.cpp
parent46edee0994354e828bd6d0bffe60b6036b8c1388 (diff)
parent443a714fa7c0dd07fee3527cc5bc3d3ca1fb7d44 (diff)
Merge "Yet more layer tracking logging" into lmp-dev
Diffstat (limited to 'libs/hwui/RenderState.cpp')
-rw-r--r--libs/hwui/RenderState.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/libs/hwui/RenderState.cpp b/libs/hwui/RenderState.cpp
index 9948b44ac703..a7c5e85d9123 100644
--- a/libs/hwui/RenderState.cpp
+++ b/libs/hwui/RenderState.cpp
@@ -15,6 +15,8 @@
*/
#include "RenderState.h"
+#include "renderthread/CanvasContext.h"
+
namespace android {
namespace uirenderer {
@@ -38,6 +40,17 @@ void RenderState::onGLContextCreated() {
void RenderState::onGLContextDestroyed() {
if (CC_UNLIKELY(!mActiveLayers.empty())) {
mCaches->dumpMemoryUsage();
+ for (std::set<renderthread::CanvasContext*>::iterator cit = mRegisteredContexts.begin();
+ cit != mRegisteredContexts.end(); cit++) {
+ renderthread::CanvasContext* context = *cit;
+ ALOGD("Context: %p (root = %p)", context, context->mRootRenderNode.get());
+ ALOGD(" Prefeteched layers: %zu", context->mPrefetechedLayers.size());
+ for (std::set<RenderNode*>::iterator pit = context->mPrefetechedLayers.begin();
+ pit != context->mPrefetechedLayers.end(); pit++) {
+ (*pit)->debugDumpLayers(" ");
+ }
+ context->mRootRenderNode->debugDumpLayers(" ");
+ }
LOG_ALWAYS_FATAL("layers have survived gl context destruction");
}
}