diff options
author | John Reck <jreck@google.com> | 2017-08-02 16:11:43 -0700 |
---|---|---|
committer | John Reck <jreck@google.com> | 2017-08-02 16:15:24 -0700 |
commit | 679e7f1dfc851f559c98ecfdfba7937dbc03c378 (patch) | |
tree | bdde5accd47e59ae246c8c5b85fecef9653faf62 /libs/hwui/RenderNode.cpp | |
parent | 6ff61dbc5101fb066cdbb7efe3b4f26ac27ddf34 (diff) |
Add check that layer size <= maxTextureSize
Ensure that RenderNode fitsOnLayer() is true before assigning
it a layer.
Bug: 63814070
Test: repro steps in bug no longer crash
Change-Id: I28bb2cb173a5efde24e2384f2606fea85b394ac8
Diffstat (limited to 'libs/hwui/RenderNode.cpp')
-rw-r--r-- | libs/hwui/RenderNode.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/libs/hwui/RenderNode.cpp b/libs/hwui/RenderNode.cpp index 55eeb7fa2073..61b3876cd095 100644 --- a/libs/hwui/RenderNode.cpp +++ b/libs/hwui/RenderNode.cpp @@ -241,7 +241,8 @@ void RenderNode::pushLayerUpdate(TreeInfo& info) { if (CC_LIKELY(layerType != LayerType::RenderLayer) || CC_UNLIKELY(!isRenderable()) || CC_UNLIKELY(properties().getWidth() == 0) - || CC_UNLIKELY(properties().getHeight() == 0)) { + || CC_UNLIKELY(properties().getHeight() == 0) + || CC_UNLIKELY(!properties().fitsOnLayer())) { if (CC_UNLIKELY(hasLayer())) { renderthread::CanvasContext::destroyLayer(this); } |