| Index: src/gpu/batches/GrDefaultPathRenderer.cpp
|
| diff --git a/src/gpu/batches/GrDefaultPathRenderer.cpp b/src/gpu/batches/GrDefaultPathRenderer.cpp
|
| index 1e807f8e3a315a52908223d69bd08354dddd2f3b..97200a1981a13615b36d72ba8a80fd9ec2036bf2 100644
|
| --- a/src/gpu/batches/GrDefaultPathRenderer.cpp
|
| +++ b/src/gpu/batches/GrDefaultPathRenderer.cpp
|
| @@ -38,10 +38,17 @@ static inline bool single_pass_shape(const GrShape& shape) {
|
| #if STENCIL_OFF
|
| return true;
|
| #else
|
| - if (!shape.style().couldBeHairline() && !shape.inverseFilled()) {
|
| + // Inverse fill is always two pass.
|
| + if (shape.inverseFilled()) {
|
| + return false;
|
| + }
|
| + // This path renderer only accepts simple fill paths or stroke paths that are either hairline
|
| + // or have a stroke width small enough to treat as hairline. Hairline paths are always single
|
| + // pass. Filled paths are single pass if they're convex.
|
| + if (shape.style().isSimpleFill()) {
|
| return shape.knownToBeConvex();
|
| }
|
| - return false;
|
| + return true;
|
| #endif
|
| }
|
|
|
|
|