Index: src/gpu/batches/GrAAHairLinePathRenderer.cpp |
diff --git a/src/gpu/batches/GrAAHairLinePathRenderer.cpp b/src/gpu/batches/GrAAHairLinePathRenderer.cpp |
index 206a72899f812da456781d5c580135ce3201a3c9..194c79e41e0d1ef80d8566defc517ee79c2512b1 100644 |
--- a/src/gpu/batches/GrAAHairLinePathRenderer.cpp |
+++ b/src/gpu/batches/GrAAHairLinePathRenderer.cpp |
@@ -683,13 +683,8 @@ public: |
SkIRect devClipBounds) : INHERITED(ClassID()) { |
fGeoData.emplace_back(Geometry{color, coverage, viewMatrix, path, devClipBounds}); |
- // compute bounds |
- fBounds = path.getBounds(); |
- viewMatrix.mapRect(&fBounds); |
- |
- // This is b.c. hairlines are notionally infinitely thin so without expansion |
- // two overlapping lines could be reordered even though they hit the same pixels. |
- fBounds.outset(0.5f, 0.5f); |
+ this->setTransformedBounds(path.getBounds(), viewMatrix, HasAABloat::kYes, |
+ IsZeroArea::kYes); |
} |
const char* name() const override { return "AAHairlineBatch"; } |
@@ -759,7 +754,7 @@ private: |
} |
fGeoData.push_back_n(that->fGeoData.count(), that->fGeoData.begin()); |
- this->joinBounds(that->bounds()); |
+ this->joinBounds(*that); |
return true; |
} |