| Index: src/core/SkCanvas.cpp
|
| diff --git a/src/core/SkCanvas.cpp b/src/core/SkCanvas.cpp
|
| index e577b21932649871180b61ab81b03c4762977ef9..cd7c6f8a140e92b3c6ef66bc78fc2287bec85dc8 100644
|
| --- a/src/core/SkCanvas.cpp
|
| +++ b/src/core/SkCanvas.cpp
|
| @@ -1071,25 +1071,11 @@ bool SkCanvas::clipRectBounds(const SkRect* bounds, SaveLayerFlags saveLayerFlag
|
|
|
| const SkMatrix& ctm = fMCRec->fMatrix; // this->getTotalMatrix()
|
|
|
| -// This is a temporary hack, until individual filters can do their own
|
| -// bloating, when this will be removed.
|
| -#ifdef SK_SUPPORT_SRC_BOUNDS_BLOAT_FOR_IMAGEFILTERS
|
| - SkRect storage;
|
| -#endif
|
| if (imageFilter) {
|
| imageFilter->filterBounds(clipBounds, ctm, &clipBounds);
|
| -#ifdef SK_SUPPORT_SRC_BOUNDS_BLOAT_FOR_IMAGEFILTERS
|
| - if (bounds && imageFilter->canComputeFastBounds()) {
|
| - imageFilter->computeFastBounds(*bounds, &storage);
|
| - bounds = &storage;
|
| - } else {
|
| - bounds = nullptr;
|
| - }
|
| -#else
|
| if (bounds && !imageFilter->canComputeFastBounds()) {
|
| bounds = nullptr;
|
| }
|
| -#endif
|
| }
|
| SkIRect ir;
|
| if (bounds) {
|
| @@ -1433,11 +1419,7 @@ void SkCanvas::internalDrawDevice(SkBaseDevice* srcDev, int x, int y,
|
| const SkBitmap& src = srcDev->accessBitmap(false);
|
| SkMatrix matrix = *iter.fMatrix;
|
| matrix.postTranslate(SkIntToScalar(-pos.x()), SkIntToScalar(-pos.y()));
|
| -#ifdef SK_SUPPORT_SRC_BOUNDS_BLOAT_FOR_IMAGEFILTERS
|
| - SkIRect clipBounds = SkIRect::MakeWH(srcDev->width(), srcDev->height());
|
| -#else
|
| SkIRect clipBounds = iter.fClip->getBounds().makeOffset(-pos.x(), -pos.y());
|
| -#endif
|
| SkAutoTUnref<SkImageFilter::Cache> cache(dstDev->getImageFilterCache());
|
| SkImageFilter::Context ctx(matrix, clipBounds, cache.get());
|
| if (filter->filterImage(&proxy, src, ctx, &dst, &offset)) {
|
|
|