| Index: src/core/SkBlitter.cpp
|
| diff --git a/src/core/SkBlitter.cpp b/src/core/SkBlitter.cpp
|
| index 15562168e990a5bbb5eb5fef9b1f1da4c03b8d8e..04897e3828af4ec077ec27102e88b279437969a8 100644
|
| --- a/src/core/SkBlitter.cpp
|
| +++ b/src/core/SkBlitter.cpp
|
| @@ -844,8 +844,7 @@
|
| if (SkXfermode::IsMode(mode, SkXfermode::kClear_Mode)) {
|
| SkPaint* p = paint.writable();
|
| shader = p->setShader(nullptr);
|
| - p->setColorFilter(nullptr);
|
| - cf = nullptr;
|
| + cf = p->setColorFilter(nullptr);
|
| mode = p->setXfermodeMode(SkXfermode::kSrc_Mode);
|
| p->setColor(0);
|
| }
|
| @@ -868,7 +867,7 @@
|
|
|
| if (cf) {
|
| SkASSERT(shader);
|
| - paint.writable()->setShader(shader->makeWithColorFilter(sk_ref_sp(cf)));
|
| + paint.writable()->setShader(shader->makeWithColorFilter(cf));
|
| shader = paint->getShader();
|
| // blitters should ignore the presence/absence of a filter, since
|
| // if there is one, the shader will take care of it.
|
|
|