X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fthird_party%2Fskia%2Fsrc%2Fcore%2FSkFilterShader.cpp;h=cb042e604cd71836f999f881dc8632dfa262fbd1;hb=3545e9f2671f595d2a2f3ee75ca0393b01e35ef6;hp=0c92d4c3e3f90f4677d19a32044bb48c2f026754;hpb=7d210d4c7e9ba36e635eabc5b5780495f8a63292;p=platform%2Fframework%2Fweb%2Fcrosswalk.git diff --git a/src/third_party/skia/src/core/SkFilterShader.cpp b/src/third_party/skia/src/core/SkFilterShader.cpp index 0c92d4c..cb042e6 100644 --- a/src/third_party/skia/src/core/SkFilterShader.cpp +++ b/src/third_party/skia/src/core/SkFilterShader.cpp @@ -21,19 +21,28 @@ SkFilterShader::SkFilterShader(SkShader* shader, SkColorFilter* filter) { filter->ref(); } -SkFilterShader::SkFilterShader(SkReadBuffer& buffer) - : INHERITED(buffer) { +#ifdef SK_SUPPORT_LEGACY_DEEPFLATTENING +SkFilterShader::SkFilterShader(SkReadBuffer& buffer) : INHERITED(buffer) { fShader = buffer.readShader(); fFilter = buffer.readColorFilter(); } +#endif SkFilterShader::~SkFilterShader() { fFilter->unref(); fShader->unref(); } +SkFlattenable* SkFilterShader::CreateProc(SkReadBuffer& buffer) { + SkAutoTUnref shader(buffer.readShader()); + SkAutoTUnref filter(buffer.readColorFilter()); + if (!shader.get() || !filter.get()) { + return NULL; + } + return SkNEW_ARGS(SkFilterShader, (shader, filter)); +} + void SkFilterShader::flatten(SkWriteBuffer& buffer) const { - this->INHERITED::flatten(buffer); buffer.writeFlattenable(fShader); buffer.writeFlattenable(fFilter); }