diff options
Diffstat (limited to 'src/core/SkColorFilter.cpp')
-rw-r--r-- | src/core/SkColorFilter.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/core/SkColorFilter.cpp b/src/core/SkColorFilter.cpp index 07e97919f5..cdae4704f3 100644 --- a/src/core/SkColorFilter.cpp +++ b/src/core/SkColorFilter.cpp @@ -55,7 +55,8 @@ void SkColorFilter::appendStages(SkRasterPipeline* p, sk_sp<SkColorFilter> cf; }; auto ctx = alloc->make<Ctx>(); - ctx->cf = SkColorSpaceXformer::Make(sk_ref_sp(dstCS))->apply(this); + ctx->cf = dstCS ? SkColorSpaceXformer::Make(sk_ref_sp(dstCS))->apply(this) + : sk_ref_sp(const_cast<SkColorFilter*>(this)); ctx->fn = [](SkJumper_CallbackCtx* arg, int active_pixels) { auto ctx = (Ctx*)arg; auto buf = (SkPM4f*)ctx->rgba; |