From f7d98f436cf1351cb479e0abd6af7056553a6fa9 Mon Sep 17 00:00:00 2001 From: Derek Sollenberger Date: Mon, 17 Apr 2017 11:27:36 -0400 Subject: [PATCH] Remove round rect clipping optimization. This optimization fails to account for inverse fill. Test: bit CtsGraphicsTestCases.CanvasTest Bug: 37417782 Change-Id: I04adfa93542b1bd1f5d905c64bb40e521242e29d --- libs/hwui/SkiaCanvas.cpp | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/libs/hwui/SkiaCanvas.cpp b/libs/hwui/SkiaCanvas.cpp index d95acff8a38e0..3e5e3bfc3bf23 100644 --- a/libs/hwui/SkiaCanvas.cpp +++ b/libs/hwui/SkiaCanvas.cpp @@ -390,14 +390,8 @@ bool SkiaCanvas::clipRect(float left, float top, float right, float bottom, SkCl } bool SkiaCanvas::clipPath(const SkPath* path, SkClipOp op) { - SkRRect roundRect; - if (path->isRRect(&roundRect)) { - this->recordClip(roundRect, op); - mCanvas->clipRRect(roundRect, op); - } else { - this->recordClip(*path, op); - mCanvas->clipPath(*path, op); - } + this->recordClip(*path, op); + mCanvas->clipPath(*path, op); return !mCanvas->isClipEmpty(); }