shape ops work in progress
git-svn-id: http://skia.googlecode.com/svn/trunk@5959 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/experimental/Intersection/ShapeOps.cpp b/experimental/Intersection/ShapeOps.cpp
index 4058a16..f33c8b1 100644
--- a/experimental/Intersection/ShapeOps.cpp
+++ b/experimental/Intersection/ShapeOps.cpp
@@ -65,6 +65,7 @@
int oppWinding = current->oppSign(index, endIndex);
bool active = windingIsActive(winding, spanWinding, oppWinding, op);
SkTDArray<Span*> chaseArray;
+ bool unsortable = false;
do {
#if DEBUG_WINDING
SkDebugf("%s active=%s winding=%d spanWinding=%d\n",
@@ -77,9 +78,12 @@
int nextStart = index;
int nextEnd = endIndex;
Segment* next = current->findNextOp(chaseArray, active,
- nextStart, nextEnd, winding, spanWinding, op,
+ nextStart, nextEnd, winding, spanWinding, unsortable, op,
aXorMask, bXorMask);
if (!next) {
+ // FIXME: if unsortable, allow partial paths to be later
+ // assembled
+ SkASSERT(!unsortable);
if (active && firstPt && current->verb() != SkPath::kLine_Verb && *firstPt != lastPt) {
lastPt = current->addCurveTo(index, endIndex, simple, true);
SkASSERT(*firstPt == lastPt);