diff options
Diffstat (limited to 'src/core/SkEdge.cpp')
-rw-r--r-- | src/core/SkEdge.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/core/SkEdge.cpp b/src/core/SkEdge.cpp index 8a6d1710c9..4c264c2eb9 100644 --- a/src/core/SkEdge.cpp +++ b/src/core/SkEdge.cpp @@ -476,6 +476,13 @@ int SkCubicEdge::updateCubic() newx = fCLastX; newy = fCLastY; } + + // we want to say SkASSERT(oldy <= newy), but our finite fixedpoint + // doesn't always achieve that, so we have to explicitly pin it here. + if (newy < oldy) { + newy = oldy; + } + success = this->updateLine(oldx, oldy, newx, newy); oldx = newx; oldy = newy; |