| Index: src/core/SkPath.cpp
|
| diff --git a/src/core/SkPath.cpp b/src/core/SkPath.cpp
|
| index f5b8bd5e79a907049b3e22065579645f36582e79..182988c5b31c78b1e02b35623d50c705e1eb8766 100644
|
| --- a/src/core/SkPath.cpp
|
| +++ b/src/core/SkPath.cpp
|
| @@ -749,6 +749,7 @@ void SkPath::lineTo(SkScalar x, SkScalar y) {
|
| }
|
|
|
| void SkPath::rLineTo(SkScalar x, SkScalar y) {
|
| + this->injectMoveToIfNeeded(); // This can change the result of this->getLastPt().
|
| SkPoint pt;
|
| this->getLastPt(&pt);
|
| this->lineTo(pt.fX + x, pt.fY + y);
|
| @@ -770,6 +771,7 @@ void SkPath::quadTo(SkScalar x1, SkScalar y1, SkScalar x2, SkScalar y2) {
|
| }
|
|
|
| void SkPath::rQuadTo(SkScalar x1, SkScalar y1, SkScalar x2, SkScalar y2) {
|
| + this->injectMoveToIfNeeded(); // This can change the result of this->getLastPt().
|
| SkPoint pt;
|
| this->getLastPt(&pt);
|
| this->quadTo(pt.fX + x1, pt.fY + y1, pt.fX + x2, pt.fY + y2);
|
| @@ -803,6 +805,7 @@ void SkPath::conicTo(SkScalar x1, SkScalar y1, SkScalar x2, SkScalar y2,
|
|
|
| void SkPath::rConicTo(SkScalar dx1, SkScalar dy1, SkScalar dx2, SkScalar dy2,
|
| SkScalar w) {
|
| + this->injectMoveToIfNeeded(); // This can change the result of this->getLastPt().
|
| SkPoint pt;
|
| this->getLastPt(&pt);
|
| this->conicTo(pt.fX + dx1, pt.fY + dy1, pt.fX + dx2, pt.fY + dy2, w);
|
| @@ -827,6 +830,7 @@ void SkPath::cubicTo(SkScalar x1, SkScalar y1, SkScalar x2, SkScalar y2,
|
|
|
| void SkPath::rCubicTo(SkScalar x1, SkScalar y1, SkScalar x2, SkScalar y2,
|
| SkScalar x3, SkScalar y3) {
|
| + this->injectMoveToIfNeeded(); // This can change the result of this->getLastPt().
|
| SkPoint pt;
|
| this->getLastPt(&pt);
|
| this->cubicTo(pt.fX + x1, pt.fY + y1, pt.fX + x2, pt.fY + y2,
|
|
|