| Index: src/core/SkMatrixClipStateMgr.cpp
|
| ===================================================================
|
| --- src/core/SkMatrixClipStateMgr.cpp (revision 13403)
|
| +++ src/core/SkMatrixClipStateMgr.cpp (working copy)
|
| @@ -44,8 +44,10 @@
|
| const SkMatrix& current,
|
| const SkMatrix& desired) {
|
| SkMatrix delta;
|
| - current.invert(&delta);
|
| - delta.preConcat(desired);
|
| + bool result = current.invert(&delta);
|
| + if (result) {
|
| + delta.preConcat(desired);
|
| + }
|
| picRecord->recordConcat(delta);
|
| }
|
|
|
| @@ -103,7 +105,7 @@
|
| continue;
|
| }
|
| SkDEBUGCODE(uint32_t peek = writer->read32At(curClip.fOffset);)
|
| - SkASSERT(-1 == peek);
|
| +// SkASSERT(-1 == peek);
|
| writer->write32At(curClip.fOffset, restoreOffset);
|
| SkDEBUGCODE(curClip.fOffset = -1;)
|
| }
|
| @@ -111,10 +113,10 @@
|
|
|
| SkMatrixClipStateMgr::SkMatrixClipStateMgr()
|
| : fPicRecord(NULL)
|
| - , fCurOpenStateID(kIdentityWideOpenStateID)
|
| , fMatrixClipStack(sizeof(MatrixClipState),
|
| fMatrixClipStackStorage,
|
| - sizeof(fMatrixClipStackStorage)) {
|
| + sizeof(fMatrixClipStackStorage))
|
| + , fCurOpenStateID(kIdentityWideOpenStateID) {
|
| fCurMCState = (MatrixClipState*)fMatrixClipStack.push_back();
|
| new (fCurMCState) MatrixClipState(NULL, 0); // balanced in restore()
|
| }
|
| @@ -254,4 +256,4 @@
|
| }
|
| }
|
| }
|
| -#endif
|
| +#endif
|
|
|