diff options
author | reed <reed@google.com> | 2016-03-22 08:59:19 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-03-22 08:59:19 -0700 |
commit | d6889293dd0942f27f9593f679722c956831f2c4 (patch) | |
tree | e7c4f9aa9ee2c4e318e8e5c8d69f6918fba1e865 /src/effects/SkColorFilterImageFilter.cpp | |
parent | 1088db92348baa013511a49392178fccf03e8008 (diff) |
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:
Review URL: https://codereview.chromium.org/1821103004
Diffstat (limited to 'src/effects/SkColorFilterImageFilter.cpp')
-rw-r--r-- | src/effects/SkColorFilterImageFilter.cpp | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/src/effects/SkColorFilterImageFilter.cpp b/src/effects/SkColorFilterImageFilter.cpp index 6eb66533d9..96ce5d9690 100644 --- a/src/effects/SkColorFilterImageFilter.cpp +++ b/src/effects/SkColorFilterImageFilter.cpp @@ -25,10 +25,10 @@ SkImageFilter* SkColorFilterImageFilter::Create(SkColorFilter* cf, SkImageFilter if (input && input->isColorFilterNode(&inputCF)) { // This is an optimization, as it collapses the hierarchy by just combining the two // colorfilters into a single one, which the new imagefilter will wrap. - sk_sp<SkColorFilter> newCF(SkColorFilter::MakeComposeFilter(sk_ref_sp(cf), - sk_sp<SkColorFilter>(inputCF))); + SkAutoUnref autoUnref(inputCF); + SkAutoTUnref<SkColorFilter> newCF(SkColorFilter::CreateComposeFilter(cf, inputCF)); if (newCF) { - return new SkColorFilterImageFilter(newCF.get(), input->getInput(0), cropRect); + return new SkColorFilterImageFilter(newCF, input->getInput(0), cropRect); } } @@ -42,13 +42,17 @@ SkColorFilterImageFilter::SkColorFilterImageFilter(SkColorFilter* cf, SkFlattenable* SkColorFilterImageFilter::CreateProc(SkReadBuffer& buffer) { SK_IMAGEFILTER_UNFLATTEN_COMMON(common, 1); - sk_sp<SkColorFilter> cf(buffer.readColorFilter()); - return Create(cf.get(), common.getInput(0), &common.cropRect()); + SkAutoTUnref<SkColorFilter> cf(buffer.readColorFilter()); + return Create(cf, common.getInput(0), &common.cropRect()); } void SkColorFilterImageFilter::flatten(SkWriteBuffer& buffer) const { this->INHERITED::flatten(buffer); - buffer.writeFlattenable(fColorFilter.get()); + buffer.writeFlattenable(fColorFilter); +} + +SkColorFilterImageFilter::~SkColorFilterImageFilter() { + fColorFilter->unref(); } bool SkColorFilterImageFilter::onFilterImageDeprecated(Proxy* proxy, const SkBitmap& source, @@ -90,7 +94,7 @@ bool SkColorFilterImageFilter::onIsColorFilterNode(SkColorFilter** filter) const SkASSERT(1 == this->countInputs()); if (!this->cropRectIsSet()) { if (filter) { - *filter = SkRef(fColorFilter.get()); + *filter = SkRef(fColorFilter); } return true; } |