diff options
| -rw-r--r-- | libs/hwui/jni/android_graphics_RenderNode.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/libs/hwui/jni/android_graphics_RenderNode.cpp b/libs/hwui/jni/android_graphics_RenderNode.cpp index a1b05c186ec0..a7d64231da80 100644 --- a/libs/hwui/jni/android_graphics_RenderNode.cpp +++ b/libs/hwui/jni/android_graphics_RenderNode.cpp @@ -597,7 +597,13 @@ static void android_view_RenderNode_requestPositionUpdates(JNIEnv* env, jobject, SkIRect clipBounds; if (enableClip) { uirenderer::Rect initialClipBounds; - props.getClippingRectForFlags(props.getClippingFlags(), &initialClipBounds); + const auto clipFlags = props.getClippingFlags(); + if (clipFlags) { + props.getClippingRectForFlags(clipFlags, &initialClipBounds); + } else { + // Works for RenderNode::damageSelf() + initialClipBounds.set(DIRTY_MIN, DIRTY_MIN, DIRTY_MAX, DIRTY_MAX); + } clipBounds = info.damageAccumulator ->computeClipAndTransform(initialClipBounds.toSkRect(), &transform) |