Make SkCreateRasterPipelineBlitter() not fail.
authorMike Klein <mtklein@chromium.org>
Wed, 10 May 2017 16:29:38 +0000 (12:29 -0400)
committerSkia Commit-Bot <skia-commit-bot@chromium.org>
Wed, 10 May 2017 20:07:37 +0000 (20:07 +0000)
commit44d3279b4154725c8fbcf3650e2c85b116084ad9
tree198869c3b6e8e411fc97590b6920b8b8da3a3e8c
parent5ac13c23628c6ee8c3f6056f38527706b403e502
Make SkCreateRasterPipelineBlitter() not fail.

Mostly this is about extending the fallback in SkShader::appendStages()
to cover more cases, and making sure subclasses call appendStages() so
they can get the fallback, not onAppendStages() directly.

We still need to watch for SkShader::makeContext() failing in the
fallback itself, so sadly SkShader::appendStages() may still fail.

Change-Id: I2314b234a24bdcecac401a385ce050d7fdf0a83e
Reviewed-on: https://skia-review.googlesource.com/16369
Reviewed-by: Matt Sarett <msarett@google.com>
Commit-Queue: Mike Klein <mtklein@chromium.org>
include/core/SkShader.h
src/core/SkBlitter.cpp
src/core/SkLocalMatrixShader.cpp
src/core/SkRasterPipelineBlitter.cpp
src/core/SkShader.cpp
src/effects/gradients/SkTwoPointConicalGradient.cpp
src/effects/gradients/SkTwoPointConicalGradient.h