diff options
author | Mike Reed <reed@google.com> | 2016-11-01 11:22:05 -0400 |
---|---|---|
committer | Skia Commit-Bot <skia-commit-bot@chromium.org> | 2016-11-01 16:05:41 +0000 |
commit | 5e25717ab6313b011ec54eac0109c414aa8ffc17 (patch) | |
tree | aa8f4f1fc4c68a3b77e671c61393206dd61f5b5f /src | |
parent | c633abbb342e3af0e56382e8cb7e7d9fed71e237 (diff) |
hide setImageFilter(ptr)
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=4184
Change-Id: Iad792cfdf54087ad4c424fd268559c162a9a5f5c
Reviewed-on: https://skia-review.googlesource.com/4184
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/core/SkCanvas.cpp | 2 | ||||
-rw-r--r-- | src/core/SkFlattenableSerialization.cpp | 5 | ||||
-rw-r--r-- | src/core/SkPaint.cpp | 3 | ||||
-rw-r--r-- | src/core/SkPictureRecord.cpp | 2 | ||||
-rw-r--r-- | src/utils/SkLua.cpp | 2 |
5 files changed, 10 insertions, 4 deletions
diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp index 9bebb5cdd8..d3876b1080 100644 --- a/src/core/SkCanvas.cpp +++ b/src/core/SkCanvas.cpp @@ -481,7 +481,7 @@ public: * draw onto the previous layer using the xfermode from the original paint. */ SkPaint tmp; - tmp.setImageFilter(fPaint->getImageFilter()); + tmp.setImageFilter(sk_ref_sp(fPaint->getImageFilter())); tmp.setBlendMode(fPaint->getBlendMode()); SkRect storage; if (rawBounds) { diff --git a/src/core/SkFlattenableSerialization.cpp b/src/core/SkFlattenableSerialization.cpp index 704526673d..e72b4c5348 100644 --- a/src/core/SkFlattenableSerialization.cpp +++ b/src/core/SkFlattenableSerialization.cpp @@ -25,3 +25,8 @@ SkFlattenable* SkValidatingDeserializeFlattenable(const void* data, size_t size, SkValidatingReadBuffer buffer(data, size); return buffer.readFlattenable(type); } + +sk_sp<SkImageFilter> SkValidatingDeserializeImageFilter(const void* data, size_t size) { + return sk_sp<SkImageFilter>((SkImageFilter*)SkValidatingDeserializeFlattenable( + data, size, SkImageFilter::GetFlattenableType())); +} diff --git a/src/core/SkPaint.cpp b/src/core/SkPaint.cpp index f01df49736..04f1251a6f 100644 --- a/src/core/SkPaint.cpp +++ b/src/core/SkPaint.cpp @@ -367,11 +367,12 @@ MOVE_FIELD(DrawLooper) #undef MOVE_FIELD void SkPaint::setLooper(sk_sp<SkDrawLooper> looper) { fDrawLooper = std::move(looper); } -// TODO: remove this variant +#ifdef SK_SUPPORT_LEGACY_SETIMAGEFILTER_PTR SkImageFilter* SkPaint::setImageFilter(SkImageFilter* imf) { this->setImageFilter(sk_ref_sp(imf)); return imf; } +#endif /////////////////////////////////////////////////////////////////////////////// diff --git a/src/core/SkPictureRecord.cpp b/src/core/SkPictureRecord.cpp index 8b8ee2388b..2a11a32e16 100644 --- a/src/core/SkPictureRecord.cpp +++ b/src/core/SkPictureRecord.cpp @@ -108,7 +108,7 @@ void SkPictureRecord::recordSaveLayer(const SaveLayerRec& rec) { if (flatFlags & SAVELAYERREC_HAS_BACKDROP) { // overkill, but we didn't already track single flattenables, so using a paint for that SkPaint paint; - paint.setImageFilter(const_cast<SkImageFilter*>(rec.fBackdrop)); + paint.setImageFilter(sk_ref_sp(const_cast<SkImageFilter*>(rec.fBackdrop))); this->addPaint(paint); } if (flatFlags & SAVELAYERREC_HAS_FLAGS) { diff --git a/src/utils/SkLua.cpp b/src/utils/SkLua.cpp index 14f074c412..a2234565cb 100644 --- a/src/utils/SkLua.cpp +++ b/src/utils/SkLua.cpp @@ -1102,7 +1102,7 @@ static int lpaint_getImageFilter(lua_State* L) { static int lpaint_setImageFilter(lua_State* L) { SkPaint* paint = get_obj<SkPaint>(L, 1); - paint->setImageFilter(get_ref<SkImageFilter>(L, 2)); + paint->setImageFilter(sk_ref_sp(get_ref<SkImageFilter>(L, 2))); return 0; } |