From: herb Date: Mon, 29 Feb 2016 20:58:35 +0000 (-0800) Subject: Fix overlooked bilerp fallback. X-Git-Tag: accepted/tizen/5.0/unified/20181102.025319~129^2~1742 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=755539f0b1f3331359d1ea2b65b6bb93387b7821;p=platform%2Fupstream%2FlibSkiaSharp.git Fix overlooked bilerp fallback. BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1746093002 Review URL: https://codereview.chromium.org/1746093002 --- diff --git a/src/core/SkLinearBitmapPipeline.cpp b/src/core/SkLinearBitmapPipeline.cpp index 2090a1e..347803c 100644 --- a/src/core/SkLinearBitmapPipeline.cpp +++ b/src/core/SkLinearBitmapPipeline.cpp @@ -423,7 +423,19 @@ public: void pointSpan(Span span) override { SkASSERT(!span.isEmpty()); - span_fallback(span, fNext); + SkPoint start; SkScalar length; int count; + std::tie(start, length, count) = span; + float dx = length / (count - 1); + + Sk4f Xs = Sk4f{X(start)} + Sk4f{-0.5f, 0.5f, -0.5f, 0.5f}; + Sk4f Ys = Sk4f{Y(start)} + Sk4f{-0.5f, -0.5f, 0.5f, 0.5f}; + + Sk4f dXs{dx}; + while (count > 0) { + fNext->bilerpList(Xs, Ys); + Xs = Xs + dXs; + count -= 1; + } } private: