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

Side by Side Diff: src/pathops/SkOpSegment.h

Issue 1250293002: fix path ops fuzz buster (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: corrupting bug kaput Created 5 years, 5 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 unified diff | Download patch
« no previous file with comments | « src/pathops/SkOpContour.h ('k') | src/pathops/SkOpSegment.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright 2012 Google Inc. 2 * Copyright 2012 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 #ifndef SkOpSegment_DEFINE 7 #ifndef SkOpSegment_DEFINE
8 #define SkOpSegment_DEFINE 8 #define SkOpSegment_DEFINE
9 9
10 #include "SkOpAngle.h" 10 #include "SkOpAngle.h"
(...skipping 164 matching lines...) Expand 10 before | Expand all | Expand 10 after
175 return (*CurveDSlopeAtT[fVerb])(fPts, fWeight, mid); 175 return (*CurveDSlopeAtT[fVerb])(fPts, fWeight, mid);
176 } 176 }
177 177
178 void dump() const; 178 void dump() const;
179 void dumpAll() const; 179 void dumpAll() const;
180 void dumpAngles() const; 180 void dumpAngles() const;
181 void dumpCoin() const; 181 void dumpCoin() const;
182 void dumpPts() const; 182 void dumpPts() const;
183 void dumpPtsInner() const; 183 void dumpPtsInner() const;
184 184
185 void findCollapsed();
185 SkOpSegment* findNextOp(SkTDArray<SkOpSpanBase*>* chase, SkOpSpanBase** next Start, 186 SkOpSegment* findNextOp(SkTDArray<SkOpSpanBase*>* chase, SkOpSpanBase** next Start,
186 SkOpSpanBase** nextEnd, bool* unsortable, SkPathOp op, 187 SkOpSpanBase** nextEnd, bool* unsortable, SkPathOp op,
187 int xorMiMask, int xorSuMask); 188 int xorMiMask, int xorSuMask);
188 SkOpSegment* findNextWinding(SkTDArray<SkOpSpanBase*>* chase, SkOpSpanBase** nextStart, 189 SkOpSegment* findNextWinding(SkTDArray<SkOpSpanBase*>* chase, SkOpSpanBase** nextStart,
189 SkOpSpanBase** nextEnd, bool* unsortable); 190 SkOpSpanBase** nextEnd, bool* unsortable);
190 SkOpSegment* findNextXor(SkOpSpanBase** nextStart, SkOpSpanBase** nextEnd, b ool* unsortable); 191 SkOpSegment* findNextXor(SkOpSpanBase** nextStart, SkOpSpanBase** nextEnd, b ool* unsortable);
191 SkOpSpan* findSortableTop(SkOpContour* ); 192 SkOpSpan* findSortableTop(SkOpContour* );
192 SkOpGlobalState* globalState() const; 193 SkOpGlobalState* globalState() const;
193 194
194 const SkOpSpan* head() const { 195 const SkOpSpan* head() const {
(...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after
403 int fCount; // number of spans (one for a non-intersecting segment) 404 int fCount; // number of spans (one for a non-intersecting segment)
404 int fDoneCount; // number of processed spans (zero initially) 405 int fDoneCount; // number of processed spans (zero initially)
405 SkPath::Verb fVerb; 406 SkPath::Verb fVerb;
406 SkDCubic::CubicType fCubicType; 407 SkDCubic::CubicType fCubicType;
407 bool fTopsFound; 408 bool fTopsFound;
408 bool fVisited; // used by missing coincidence check 409 bool fVisited; // used by missing coincidence check
409 SkDEBUGCODE(int fID); 410 SkDEBUGCODE(int fID);
410 }; 411 };
411 412
412 #endif 413 #endif
OLDNEW
« no previous file with comments | « src/pathops/SkOpContour.h ('k') | src/pathops/SkOpSegment.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698