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

Side by Side Diff: src/pathops/SkOpContour.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/SkOpCoincidence.cpp ('k') | src/pathops/SkOpSegment.h » ('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 2013 Google Inc. 2 * Copyright 2013 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 SkOpContour_DEFINED 7 #ifndef SkOpContour_DEFINED
8 #define SkOpContour_DEFINED 8 #define SkOpContour_DEFINED
9 9
10 #include "SkOpSegment.h" 10 #include "SkOpSegment.h"
(...skipping 174 matching lines...) Expand 10 before | Expand all | Expand 10 after
185 void dumpPtsX() const; 185 void dumpPtsX() const;
186 void dumpSegment(int ) const; 186 void dumpSegment(int ) const;
187 void dumpSegments(SkPathOp op) const; 187 void dumpSegments(SkPathOp op) const;
188 void dumpSpan(int ) const; 188 void dumpSpan(int ) const;
189 void dumpSpans() const; 189 void dumpSpans() const;
190 190
191 const SkPoint& end() const { 191 const SkPoint& end() const {
192 return fTail->pts()[SkPathOpsVerbToPoints(fTail->verb())]; 192 return fTail->pts()[SkPathOpsVerbToPoints(fTail->verb())];
193 } 193 }
194 194
195 bool findCollapsed() {
196 SkASSERT(fCount > 0);
197 SkOpSegment* segment = &fHead;
198 do {
199 segment->findCollapsed();
200 } while ((segment = segment->next()));
201 return true;
202 }
203
195 SkOpSpan* findSortableTop(SkOpContour* ); 204 SkOpSpan* findSortableTop(SkOpContour* );
196 205
197 SkOpSegment* first() { 206 SkOpSegment* first() {
198 SkASSERT(fCount > 0); 207 SkASSERT(fCount > 0);
199 return &fHead; 208 return &fHead;
200 } 209 }
201 210
202 const SkOpSegment* first() const { 211 const SkOpSegment* first() const {
203 SkASSERT(fCount > 0); 212 SkASSERT(fCount > 0);
204 return &fHead; 213 return &fHead;
(...skipping 208 matching lines...) Expand 10 before | Expand all | Expand 10 after
413 bool fXor; // set if original path had even-odd fill 422 bool fXor; // set if original path had even-odd fill
414 bool fOppXor; // set if opposite path had even-odd fill 423 bool fOppXor; // set if opposite path had even-odd fill
415 SkDEBUGCODE(int fID); 424 SkDEBUGCODE(int fID);
416 SkDEBUGCODE(mutable int fDebugIndent); 425 SkDEBUGCODE(mutable int fDebugIndent);
417 }; 426 };
418 427
419 class SkOpContourHead : public SkOpContour { 428 class SkOpContourHead : public SkOpContour {
420 }; 429 };
421 430
422 #endif 431 #endif
OLDNEW
« 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