Index: src/pathops/SkOpBuilder.cpp |
diff --git a/src/pathops/SkOpBuilder.cpp b/src/pathops/SkOpBuilder.cpp |
index 67aa92fe265586ccc7c8b4d23031924275dae9c6..6652c10d52571753d099d9d47d24fec3ee7295b5 100644 |
--- a/src/pathops/SkOpBuilder.cpp |
+++ b/src/pathops/SkOpBuilder.cpp |
@@ -44,13 +44,11 @@ bool FixWinding(SkPath* path) { |
} |
SkChunkAlloc allocator(4096); |
SkOpContourHead contourHead; |
- SkOpGlobalState globalState(nullptr, &contourHead SkDEBUGPARAMS(false) |
+ SkOpGlobalState globalState(&contourHead, &allocator SkDEBUGPARAMS(false) |
SkDEBUGPARAMS(nullptr)); |
- SkOpEdgeBuilder builder(*path, &contourHead, &allocator, &globalState); |
- builder.finish(&allocator); |
- if (!contourHead.next()) { |
- return false; |
- } |
+ SkOpEdgeBuilder builder(*path, &contourHead, &globalState); |
+ builder.finish(); |
+ SkASSERT(contourHead.next()); |
contourHead.resetReverse(); |
bool writePath = false; |
SkOpSpan* topSpan; |
@@ -67,7 +65,7 @@ bool FixWinding(SkPath* path) { |
topContour->setReverse(); |
writePath = true; |
} |
- topContour->markDone(); |
+ topContour->markAllDone(); |
globalState.clearNested(); |
} |
if (!writePath) { |