Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(218)

Unified Diff: src/pathops/SkOpContour.h

Issue 1394503003: fix some pathops bugs found in 1M skps (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: init to avoid warning Created 5 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/pathops/SkOpCoincidence.cpp ('k') | src/pathops/SkOpSegment.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/pathops/SkOpContour.h
diff --git a/src/pathops/SkOpContour.h b/src/pathops/SkOpContour.h
index 974c4ad3c132bb538fff5ef17aaa6adf1e322cd5..c6120089bded3b7fcba2fdc15aa462013af67d94 100644
--- a/src/pathops/SkOpContour.h
+++ b/src/pathops/SkOpContour.h
@@ -132,10 +132,15 @@ public:
return SkDEBUGRELEASE(this->globalState()->debugAngle(id), nullptr);
}
+ void debugCheckHealth(const char* id, SkPathOpsDebug::GlitchLog* ) const;
+
SkOpContour* debugContour(int id) {
return SkDEBUGRELEASE(this->globalState()->debugContour(id), nullptr);
}
+ void debugMissingCoincidence(const char* id, SkPathOpsDebug::GlitchLog* log,
+ const SkOpCoincidence* coincidence) const;
+
const SkOpPtT* debugPtT(int id) const {
return SkDEBUGRELEASE(this->globalState()->debugPtT(id), nullptr);
}
@@ -181,10 +186,10 @@ public:
void dumpContoursSpan(int segmentID) const;
void dumpContoursSpans() const;
void dumpPt(int ) const;
- void dumpPts() const;
- void dumpPtsX() const;
+ void dumpPts(const char* prefix = "seg") const;
+ void dumpPtsX(const char* prefix) const;
void dumpSegment(int ) const;
- void dumpSegments(SkPathOp op) const;
+ void dumpSegments(const char* prefix = "seg", SkPathOp op = (SkPathOp) -1) const;
void dumpSpan(int ) const;
void dumpSpans() const;
@@ -245,7 +250,9 @@ public:
bool result = false;
do {
if (fState->angleCoincidence()) {
- segment->checkAngleCoin(coincidences, allocator);
+#if DEBUG_ANGLE
+ segment->debugCheckAngleCoin();
+#endif
} else if (segment->missingCoincidence(coincidences, allocator)) {
result = true;
// FIXME: trying again loops forever in issue3651_6
« no previous file with comments | « src/pathops/SkOpCoincidence.cpp ('k') | src/pathops/SkOpSegment.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698