diff options
Diffstat (limited to 'libs/hwui/RenderState.cpp')
-rw-r--r-- | libs/hwui/RenderState.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/libs/hwui/RenderState.cpp b/libs/hwui/RenderState.cpp index a7c5e85d9123..ec8307f28d5b 100644 --- a/libs/hwui/RenderState.cpp +++ b/libs/hwui/RenderState.cpp @@ -38,6 +38,7 @@ void RenderState::onGLContextCreated() { } void RenderState::onGLContextDestroyed() { + AutoMutex _lock(mLayerLock); if (CC_UNLIKELY(!mActiveLayers.empty())) { mCaches->dumpMemoryUsage(); for (std::set<renderthread::CanvasContext*>::iterator cit = mRegisteredContexts.begin(); @@ -51,6 +52,13 @@ void RenderState::onGLContextDestroyed() { } context->mRootRenderNode->debugDumpLayers(" "); } + + for (std::set<const Layer*>::iterator lit = mActiveLayers.begin(); + lit != mActiveLayers.end(); lit++) { + const Layer* layer = *(lit); + ALOGD("Layer %p, fbo %d, buildlayered %d", + layer, layer->getFbo(), layer->wasBuildLayered); + } LOG_ALWAYS_FATAL("layers have survived gl context destruction"); } } |