| Index: src/core/SkBitmapProcShader.cpp
|
| diff --git a/src/core/SkBitmapProcShader.cpp b/src/core/SkBitmapProcShader.cpp
|
| index fb58f542cc7b7c708426ec129ac28e231bbce644..0a3c0eaeb7f0da2eb44f336077fc2de70bd3b895 100644
|
| --- a/src/core/SkBitmapProcShader.cpp
|
| +++ b/src/core/SkBitmapProcShader.cpp
|
| @@ -176,9 +176,9 @@ private:
|
| static bool choose_linear_pipeline(const SkShader::ContextRec& rec, const SkImageInfo& srcInfo) {
|
| // These src attributes are not supported in the new 4f context (yet)
|
| //
|
| - if (srcInfo.bytesPerPixel() < 4 ||
|
| - kRGBA_F16_SkColorType == srcInfo.colorType() ||
|
| - kIndex_8_SkColorType == srcInfo.colorType()) {
|
| + if (srcInfo.colorType() != kRGBA_8888_SkColorType
|
| + && srcInfo.colorType() != kBGRA_8888_SkColorType
|
| + && srcInfo.colorType() != kIndex_8_SkColorType) {
|
| return false;
|
| }
|
|
|
| @@ -230,7 +230,8 @@ SkShader::Context* SkBitmapProcShader::MakeContext(const SkShader& shader,
|
| return nullptr;
|
| }
|
| if (info->fPixmap.colorType() != kRGBA_8888_SkColorType
|
| - && info->fPixmap.colorType() != kBGRA_8888_SkColorType) {
|
| + && info->fPixmap.colorType() != kBGRA_8888_SkColorType
|
| + && info->fPixmap.colorType() != kIndex_8_SkColorType) {
|
| return nullptr;
|
| }
|
| return new (storage) LinearPipelineContext(shader, rec, info);
|
|
|