From d4fe4d3b30aaefcaaae6a6d1b8dc4bf59e034768 Mon Sep 17 00:00:00 2001 From: Chris Craik Date: Thu, 9 Jun 2016 16:57:11 -0700 Subject: Fix framebuffer incomplete errors bug:29127615 Primarily fixes case where 0 dimensioned layers could be created/updated. Additionally, adds more logging in incomplete framebuffer cases, if they still occur. Change-Id: Ib90dbbafd6905aca3c8f46e64064e13a308f713d --- libs/hwui/FrameBuilder.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'libs/hwui/FrameBuilder.cpp') diff --git a/libs/hwui/FrameBuilder.cpp b/libs/hwui/FrameBuilder.cpp index cb8e55fbb21c..b8a5ce6686b4 100644 --- a/libs/hwui/FrameBuilder.cpp +++ b/libs/hwui/FrameBuilder.cpp @@ -86,7 +86,9 @@ void FrameBuilder::deferLayers(const LayerUpdateQueue& layers) { ATRACE_FORMAT("Optimize HW Layer DisplayList %s %ux%u", layerNode->getName(), layerNode->getWidth(), layerNode->getHeight()); - const Rect& layerDamage = layers.entries()[i].damage; + Rect layerDamage = layers.entries()[i].damage; + // TODO: ensure layer damage can't be larger than layer + layerDamage.doIntersect(0, 0, layer->viewportWidth, layer->viewportHeight); layerNode->computeOrdering(); // map current light center into RenderNode's coordinate space -- cgit v1.2.3-59-g8ed1b