diff options
| author | 2013-06-17 13:52:06 -0700 | |
|---|---|---|
| committer | 2013-06-17 13:52:06 -0700 | |
| commit | d72b73cea49f29c41661e55eb6bfdbc04f09d809 (patch) | |
| tree | e6782e49ac767cd62e22ca8e44f18eb3977bb1e6 /libs/hwui/OpenGLRenderer.cpp | |
| parent | 4aaf8b3d4b160aea5ceb5ccf799e44c1d5a3f14b (diff) | |
Better handle op size edge cases
bug:9464358
Previously, empty and unknown sized ops are assumed to fully cover
their clip. This is now corrected such that empty sized ops are
pre-rejected before defer. Additionally, unknown sized ops disable
overdraw avoidance.
Change-Id: Icf2ce24f98be5ea6299e24ffcf826790373564a1
Diffstat (limited to 'libs/hwui/OpenGLRenderer.cpp')
| -rw-r--r-- | libs/hwui/OpenGLRenderer.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libs/hwui/OpenGLRenderer.cpp b/libs/hwui/OpenGLRenderer.cpp index 05f43a9f74a5..ed6498f9fd9a 100644 --- a/libs/hwui/OpenGLRenderer.cpp +++ b/libs/hwui/OpenGLRenderer.cpp @@ -1395,9 +1395,9 @@ bool OpenGLRenderer::storeDisplayState(DeferredDisplayState& state, int stateDef } state.mBounds.set(clippedBounds); } else { - // If we don't have bounds, let's assume we're clipped - // to prevent merging - state.mClipSideFlags = kClipSide_Full; + // Empty bounds implies size unknown. Label op as conservatively clipped to disable + // overdraw avoidance (since we don't know what it overlaps) + state.mClipSideFlags = kClipSide_ConservativeFull; state.mBounds.set(currentClip); } } |