diff options
author | 2016-03-22 10:17:23 -0700 | |
---|---|---|
committer | 2016-03-22 10:17:23 -0700 | |
commit | d053ce9c54d4e5937a142278359e5a4cde18095e (patch) | |
tree | e85d4b9d8b23f4fc3c04e6a72173d363ba5f69d5 /src/core/SkBlitter.cpp | |
parent | d25d06bf5f109c429e59a41d11854d2a3835abe9 (diff) |
Reland of [2] of "switch colorfilters to sk_sp (patchset #11 id:200001 of https://codereview.chromium.o… (patchset #1 id:1 of https://codereview.chromium.org/1821103004/ )
Reason for revert:
guard has now landed in chrome
Original issue's description:
> Revert of Revert[2] of "switch colorfilters to sk_sp (patchset #11 id:200001 of https://codereview.chromium.o… (patchset #3 id:40001 of https://codereview.chromium.org/1825073002/ )
>
> Reason for revert:
> CreateModeFilter not compiling
>
> Original issue's description:
> > Revert[2] of "switch colorfilters to sk_sp (patchset #11 id:200001 of https://codereview.chromium.org/1822623002/ )"
> >
> > Fixed legacy withColorFilter to call new(er) make method
> >
> > This reverts commit 1eb81db650d31f50be67b12d60c4f9e7dd08432f.
> >
> > BUG=skia:
> > GOLD_TRYBOT_URL= https://gold.skia.org/search2?unt=true&query=source_type%3Dgm&master=false&issue=1825073002
> >
> > TBR=
> >
> > Committed: https://skia.googlesource.com/skia/+/4c9776b046dd5e9e46e2d1ce35154855c8fcb381
>
> TBR=
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=skia:
>
> Committed: https://skia.googlesource.com/skia/+/d6889293dd0942f27f9593f679722c956831f2c4
TBR=
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=skia:
Review URL: https://codereview.chromium.org/1827433002
Diffstat (limited to 'src/core/SkBlitter.cpp')
-rw-r--r-- | src/core/SkBlitter.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/core/SkBlitter.cpp b/src/core/SkBlitter.cpp index 04897e3828..15562168e9 100644 --- a/src/core/SkBlitter.cpp +++ b/src/core/SkBlitter.cpp @@ -844,7 +844,8 @@ SkBlitter* SkBlitter::Choose(const SkPixmap& device, if (SkXfermode::IsMode(mode, SkXfermode::kClear_Mode)) { SkPaint* p = paint.writable(); shader = p->setShader(nullptr); - cf = p->setColorFilter(nullptr); + p->setColorFilter(nullptr); + cf = nullptr; mode = p->setXfermodeMode(SkXfermode::kSrc_Mode); p->setColor(0); } @@ -867,7 +868,7 @@ SkBlitter* SkBlitter::Choose(const SkPixmap& device, if (cf) { SkASSERT(shader); - paint.writable()->setShader(shader->makeWithColorFilter(cf)); + paint.writable()->setShader(shader->makeWithColorFilter(sk_ref_sp(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. |