commit | 748d620adce9e4855ac0b4b565a6659b803baaa4 | [log] [tgz] |
---|---|---|
author | fmalita <fmalita@chromium.org> | Wed May 11 11:39:58 2016 -0700 |
committer | Commit bot <commit-bot@chromium.org> | Wed May 11 11:39:58 2016 -0700 |
tree | 6ddcac70f3d5605501548a6610a9063d66fef175 | |
parent | 87bf8f7d1567abaf2f61ea79a8779bdaf25e2d54 [diff] [blame] |
Harden linear gradients Ensure that the last offset == 1.0f when implict positions are used (previously subject to float imprecision). BUG=skia:5288,chromium:598484 R=reed@google.com GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1974463002 Review-Url: https://codereview.chromium.org/1974463002
diff --git a/src/effects/gradients/SkGradientShader.cpp b/src/effects/gradients/SkGradientShader.cpp index fdb6e59..3c47847 100644 --- a/src/effects/gradients/SkGradientShader.cpp +++ b/src/effects/gradients/SkGradientShader.cpp
@@ -774,6 +774,8 @@ static void desc_init(SkGradientShaderBase::Descriptor* desc, const SkColor colors[], const SkScalar pos[], int colorCount, SkShader::TileMode mode, uint32_t flags, const SkMatrix* localMatrix) { + SkASSERT(colorCount > 1); + desc->fColors = colors; desc->fPos = pos; desc->fCount = colorCount;