Index: src/effects/SkMorphologyImageFilter.cpp |
diff --git a/src/effects/SkMorphologyImageFilter.cpp b/src/effects/SkMorphologyImageFilter.cpp |
index 205fc0d1eb2c71d924d8badd35ee4c518b3dd3a3..895000e86e93b834446689c78e2e71210faff8fb 100644 |
--- a/src/effects/SkMorphologyImageFilter.cpp |
+++ b/src/effects/SkMorphologyImageFilter.cpp |
@@ -548,8 +548,7 @@ bool apply_morphology(const SkBitmap& input, |
const SkIRect& rect, |
GrMorphologyEffect::MorphologyType morphType, |
SkISize radius, |
- SkBitmap* dst, |
- GrTextureProvider::SizeConstraint constraint) { |
+ SkBitmap* dst) { |
SkAutoTUnref<GrTexture> srcTexture(SkRef(input.getTexture())); |
SkASSERT(srcTexture); |
GrContext* context = srcTexture->getContext(); |
@@ -567,14 +566,7 @@ bool apply_morphology(const SkBitmap& input, |
SkIRect srcRect = rect; |
if (radius.fWidth > 0) { |
- GrTextureProvider::SizeConstraint horiConstraint = constraint; |
- if (radius.fHeight > 0) { |
- // Optimization: we will fall through and allocate the "real" texture after this one |
- // so ours can be approximate (likely faster to allocate) |
- horiConstraint = GrTextureProvider::kApprox_SizeConstraint; |
- } |
- |
- GrTexture* scratch = context->textureProvider()->createTexture(desc, horiConstraint); |
+ GrTexture* scratch = context->textureProvider()->createApproxTexture(desc); |
if (nullptr == scratch) { |
return false; |
} |
@@ -598,7 +590,7 @@ bool apply_morphology(const SkBitmap& input, |
srcRect = dstRect; |
} |
if (radius.fHeight > 0) { |
- GrTexture* scratch = context->textureProvider()->createTexture(desc, constraint); |
+ GrTexture* scratch = context->textureProvider()->createApproxTexture(desc); |
if (nullptr == scratch) { |
return false; |
} |
@@ -656,8 +648,7 @@ bool SkMorphologyImageFilter::filterImageGPUGeneric(bool dilate, |
GrMorphologyEffect::MorphologyType type = dilate ? GrMorphologyEffect::kDilate_MorphologyType |
: GrMorphologyEffect::kErode_MorphologyType; |
- if (!apply_morphology(input, srcBounds, type, SkISize::Make(width, height), result, |
- GrTextureProvider::FromImageFilter(ctx.sizeConstraint()))) { |
+ if (!apply_morphology(input, srcBounds, type, SkISize::Make(width, height), result)) { |
return false; |
} |
offset->fX = bounds.left(); |