238 {
240
242 return false;
243 }
244
246 return false;
247 }
248
250 return false;
251 }
252
255 return false;
256 }
257 const int SAFETY_COUNT = 3;
258 int safetyHatch = SAFETY_COUNT;
259
260 do {
261 bool added;
263 return false;
264 }
265 if (!added) {
266 break;
267 }
268 if (!--safetyHatch) {
269 SkASSERT(globalState->debugSkipAssert());
270 return false;
271 }
273 } while (true);
274
276 bool added;
278 return false;
279 }
281 return false;
282 }
284 return false;
285 }
287 }
288
290 return false;
291 }
292
294
298 return false;
299 }
301 return false;
302 }
303 } else {
305 }
307
309 safetyHatch = SAFETY_COUNT;
310 do {
312
314 return false;
315 }
316
317
319 return false;
320 }
321 if (!--safetyHatch) {
322 SkASSERT(globalState->debugSkipAssert());
323 return false;
324 }
325 } while (!overlaps.isEmpty());
328 return false;
329 }
330#if DEBUG_COINCIDENCE_VERBOSE
332#endif
333#if DEBUG_COINCIDENCE
335#endif
337 return true;
338}
static void calc_angles(SkOpContourHead *contourList DEBUG_COIN_DECLARE_PARAMS())
static bool move_nearby(SkOpContourHead *contourList DEBUG_COIN_DECLARE_PARAMS())
static bool sort_angles(SkOpContourHead *contourList)
static bool missing_coincidence(SkOpContourHead *contourList DEBUG_COIN_DECLARE_PARAMS())
static bool move_multiples(SkOpContourHead *contourList DEBUG_COIN_DECLARE_PARAMS())
#define DEBUG_PHASE_ONLY_PARAMS(phase)
#define DEBUG_PHASE_PARAMS(phase)
#define DEBUG_ITER_PARAMS(iteration)
#define DEBUG_ITER_ONLY_PARAMS(iteration)
#define DEBUG_COIN_ONLY_PARAMS()
#define DEBUG_COIN_PARAMS()
bool addExpanded(DEBUG_COIN_DECLARE_ONLY_PARAMS())
bool addEndMovedSpans(DEBUG_COIN_DECLARE_ONLY_PARAMS())
bool apply(DEBUG_COIN_DECLARE_ONLY_PARAMS())
void debugShowCoincidence() const
bool addMissing(bool *added DEBUG_COIN_DECLARE_PARAMS())
void correctEnds(DEBUG_COIN_DECLARE_ONLY_PARAMS())
bool findOverlaps(SkOpCoincidence *DEBUG_COIN_DECLARE_PARAMS()) const
bool expand(DEBUG_COIN_DECLARE_ONLY_PARAMS())
bool mark(DEBUG_COIN_DECLARE_ONLY_PARAMS())
void debugValidate() const
SkOpGlobalState * globalState() const
static void ShowActiveSpans(SkOpContourHead *contourList)