| Index: src/pathops/SkOpContour.h
|
| diff --git a/src/pathops/SkOpContour.h b/src/pathops/SkOpContour.h
|
| index a5635fe3d2b59b083dcb5801df931fa71de103ac..a4ec6d398f04bdbab27a11bc0867bbc55be657d3 100644
|
| --- a/src/pathops/SkOpContour.h
|
| +++ b/src/pathops/SkOpContour.h
|
| @@ -36,7 +36,7 @@ public:
|
| : fBounds.fTop < rh.fBounds.fTop;
|
| }
|
|
|
| - void addCoincident(int index, SkOpContour* other, int otherIndex,
|
| + bool addCoincident(int index, SkOpContour* other, int otherIndex,
|
| const SkIntersections& ts, bool swap);
|
| void addCoincidentPoints();
|
|
|
| @@ -63,7 +63,7 @@ public:
|
| fSegments[segIndex].addOtherT(tIndex, otherT, otherIndex);
|
| }
|
|
|
| - void addPartialCoincident(int index, SkOpContour* other, int otherIndex,
|
| + bool addPartialCoincident(int index, SkOpContour* other, int otherIndex,
|
| const SkIntersections& ts, int ptIndex, bool swap);
|
|
|
| int addQuad(const SkPoint pts[3]) {
|
| @@ -100,6 +100,9 @@ public:
|
| if (segment->verb() == SkPath::kLine_Verb) {
|
| continue;
|
| }
|
| + if (segment->done()) {
|
| + continue; // likely coincident, nothing to do
|
| + }
|
| segment->checkEnds();
|
| }
|
| }
|
|
|