| Index: src/gpu/GrAAConvexTessellator.cpp
|
| diff --git a/src/gpu/GrAAConvexTessellator.cpp b/src/gpu/GrAAConvexTessellator.cpp
|
| index 85ce7ba9ed6bc17681cbc791d7134210861e0539..e38ba3c3aed8c96a63ab83f70abb55c192e6ea79 100644
|
| --- a/src/gpu/GrAAConvexTessellator.cpp
|
| +++ b/src/gpu/GrAAConvexTessellator.cpp
|
| @@ -681,7 +681,12 @@ bool GrAAConvexTessellator::createInsetRing(const Ring& lastRing, Ring* nextRing
|
| if (!dupPrevVsNext) {
|
| dst[cur] = fCandidateVerts.fuseWithPrior(lastRing.origEdgeID(cur));
|
| } else {
|
| - dst[cur] = dst[cur-1] = fCandidateVerts.fuseWithBoth();
|
| + const int fused = fCandidateVerts.fuseWithBoth();
|
| + dst[cur] = fused;
|
| + const int targetIdx = dst[cur - 1];
|
| + for (int i = cur - 1; i >= 0 && dst[i] == targetIdx; i--) {
|
| + dst[i] = fused;
|
| + }
|
| }
|
| }
|
|
|
|
|