| Index: third_party/WebKit/Source/modules/canvas2d/BaseRenderingContext2D.h
|
| diff --git a/third_party/WebKit/Source/modules/canvas2d/BaseRenderingContext2D.h b/third_party/WebKit/Source/modules/canvas2d/BaseRenderingContext2D.h
|
| index 8da21d7eabf909071f1398eb4a5319750be01b0b..b02faa6e81f63827341fa82fcb163f3143cca5c8 100644
|
| --- a/third_party/WebKit/Source/modules/canvas2d/BaseRenderingContext2D.h
|
| +++ b/third_party/WebKit/Source/modules/canvas2d/BaseRenderingContext2D.h
|
| @@ -228,7 +228,7 @@ class MODULES_EXPORT BaseRenderingContext2D : public GarbageCollectedMixin,
|
| virtual void didDraw(const SkIRect& dirtyRect) = 0;
|
|
|
| virtual bool stateHasFilter() = 0;
|
| - virtual SkImageFilter* stateGetFilter() = 0;
|
| + virtual sk_sp<SkImageFilter> stateGetFilter() = 0;
|
| virtual void snapshotStateForFilter() = 0;
|
|
|
| virtual void validateStateStack() const = 0;
|
| @@ -422,7 +422,7 @@ void BaseRenderingContext2D::compositedDraw(
|
| SkCanvas* c,
|
| CanvasRenderingContext2DState::PaintType paintType,
|
| CanvasRenderingContext2DState::ImageType imageType) {
|
| - SkImageFilter* filter = stateGetFilter();
|
| + sk_sp<SkImageFilter> filter = stateGetFilter();
|
| ASSERT(isFullCanvasCompositeMode(state().globalComposite()) || filter);
|
| SkMatrix ctm = c->getTotalMatrix();
|
| c->resetMatrix();
|
| @@ -440,8 +440,8 @@ void BaseRenderingContext2D::compositedDraw(
|
| sk_ref_sp(foregroundPaint.getImageFilter());
|
| composedFilter = SkComposeImageFilter::Make(
|
| std::move(composedFilter), sk_ref_sp(shadowPaint.getImageFilter()));
|
| - composedFilter = SkComposeImageFilter::Make(std::move(composedFilter),
|
| - sk_ref_sp(filter));
|
| + composedFilter =
|
| + SkComposeImageFilter::Make(std::move(composedFilter), filter);
|
| foregroundPaint.setImageFilter(std::move(composedFilter));
|
| c->setMatrix(ctm);
|
| drawFunc(c, &foregroundPaint);
|
| @@ -455,7 +455,7 @@ void BaseRenderingContext2D::compositedDraw(
|
| c->restoreToCount(saveCount);
|
| }
|
|
|
| - compositePaint.setImageFilter(filter);
|
| + compositePaint.setImageFilter(std::move(filter));
|
| c->saveLayer(nullptr, &compositePaint);
|
| SkPaint foregroundPaint =
|
| *state().getPaint(paintType, DrawForegroundOnly, imageType);
|
|
|