| Index: src/core/SkPathRef.cpp
|
| ===================================================================
|
| --- src/core/SkPathRef.cpp (revision 13420)
|
| +++ src/core/SkPathRef.cpp (working copy)
|
| @@ -154,7 +154,6 @@
|
| void SkPathRef::Rewind(SkAutoTUnref<SkPathRef>* pathRef) {
|
| if ((*pathRef)->unique()) {
|
| SkDEBUGCODE((*pathRef)->validate();)
|
| - (*pathRef)->fLastMoveToIndex = kINITIAL_LASTMOVETOINDEX_VALUE;
|
| (*pathRef)->fBoundsIsDirty = true; // this also invalidates fIsFinite
|
| (*pathRef)->fVerbCnt = 0;
|
| (*pathRef)->fPointCnt = 0;
|
| @@ -277,20 +276,6 @@
|
| SkDEBUGCODE(this->validate();)
|
| }
|
|
|
| -void SkPathRef::injectMoveToIfNeeded() {
|
| - if (fLastMoveToIndex < 0) {
|
| - SkScalar x, y;
|
| - if (this->countVerbs() == 0) {
|
| - x = y = 0;
|
| - } else {
|
| - const SkPoint& pt = this->atPoint(~fLastMoveToIndex);
|
| - x = pt.fX;
|
| - y = pt.fY;
|
| - }
|
| - this->growForVerb(SkPath::kMove_Verb, 0)->set(x, y);
|
| - }
|
| -}
|
| -
|
| SkPoint* SkPathRef::growForRepeatedVerb(int /*SkPath::Verb*/ verb,
|
| int numVbs,
|
| SkScalar** weights) {
|
| @@ -299,16 +284,11 @@
|
| // future this will appear to have been a fluke...
|
| static const unsigned int kMIN_COUNT_FOR_MEMSET_TO_BE_FAST = 16;
|
|
|
| - if (numVbs <= 0) {
|
| - return NULL;
|
| - }
|
| -
|
| SkDEBUGCODE(this->validate();)
|
| int pCnt;
|
| bool dirtyAfterEdit = true;
|
| switch (verb) {
|
| case SkPath::kMove_Verb:
|
| - fLastMoveToIndex = fPointCnt + numVbs - 1;
|
| pCnt = numVbs;
|
| dirtyAfterEdit = false;
|
| break;
|
| @@ -330,8 +310,6 @@
|
| break;
|
| case SkPath::kClose_Verb:
|
| SkDEBUGFAIL("growForRepeatedVerb called for kClose_Verb");
|
| - // signal that we need a moveTo to follow us (unless we're done)
|
| - fLastMoveToIndex ^= ~fLastMoveToIndex >> (8 * sizeof(fLastMoveToIndex) - 1);
|
| pCnt = 0;
|
| dirtyAfterEdit = false;
|
| break;
|
| @@ -383,8 +361,6 @@
|
| bool dirtyAfterEdit = true;
|
| switch (verb) {
|
| case SkPath::kMove_Verb:
|
| - // remember our index
|
| - fLastMoveToIndex = fPointCnt;
|
| pCnt = 1;
|
| dirtyAfterEdit = false;
|
| break;
|
| @@ -405,8 +381,6 @@
|
| pCnt = 3;
|
| break;
|
| case SkPath::kClose_Verb:
|
| - // signal that we need a moveTo to follow us (unless we're done)
|
| - fLastMoveToIndex ^= ~fLastMoveToIndex >> (8 * sizeof(fLastMoveToIndex) - 1);
|
| pCnt = 0;
|
| dirtyAfterEdit = false;
|
| break;
|
| @@ -486,34 +460,23 @@
|
|
|
| #ifdef SK_DEBUG_PATH
|
| uint32_t mask = 0;
|
| - int lastMoveToIndex = kINITIAL_LASTMOVETOINDEX_VALUE;
|
| - int pointCnt = 0;
|
| for (int i = 0; i < fVerbCnt; ++i) {
|
| switch (fVerbs[~i]) {
|
| case SkPath::kMove_Verb:
|
| - lastMoveToIndex = pointCnt;
|
| - ++pointCnt;
|
| break;
|
| case SkPath::kLine_Verb:
|
| mask |= SkPath::kLine_SegmentMask;
|
| - ++pointCnt;
|
| break;
|
| case SkPath::kQuad_Verb:
|
| mask |= SkPath::kQuad_SegmentMask;
|
| - pointCnt += 2;
|
| break;
|
| case SkPath::kConic_Verb:
|
| mask |= SkPath::kConic_SegmentMask;
|
| - pointCnt += 2;
|
| break;
|
| case SkPath::kCubic_Verb:
|
| mask |= SkPath::kCubic_SegmentMask;
|
| - pointCnt += 3;
|
| break;
|
| case SkPath::kClose_Verb:
|
| - if (lastMoveToIndex >= 0) {
|
| - lastMoveToIndex = ~lastMoveToIndex;
|
| - }
|
| break;
|
| case SkPath::kDone_Verb:
|
| SkDEBUGFAIL("Done verb shouldn't be recorded.");
|
| @@ -524,8 +487,6 @@
|
| }
|
| }
|
| SkASSERT(mask == fSegmentMask);
|
| - SkASSERT(lastMoveToIndex == fLastMoveToIndex);
|
| - SkASSERT(pointCnt == fPointCnt);
|
| #endif // SK_DEBUG_PATH
|
| }
|
| #endif
|
|
|