| Index: src/effects/SkXfermodeImageFilter.cpp
|
| diff --git a/src/effects/SkXfermodeImageFilter.cpp b/src/effects/SkXfermodeImageFilter.cpp
|
| index c3f8487ab6fe4f12718f6323675e6d7f924af331..6cd54372bf349a4e6b57d095a9c0d45730a18657 100644
|
| --- a/src/effects/SkXfermodeImageFilter.cpp
|
| +++ b/src/effects/SkXfermodeImageFilter.cpp
|
| @@ -14,7 +14,7 @@
|
| #include "SkXfermode.h"
|
| #if SK_SUPPORT_GPU
|
| #include "GrContext.h"
|
| -#include "effects/GrSimpleTextureEffect.h"
|
| +#include "effects/GrTextureDomain.h"
|
| #include "SkGr.h"
|
| #endif
|
|
|
| @@ -169,7 +169,14 @@ bool SkXfermodeImageFilter::filterImageGPU(Proxy* proxy,
|
| src.getBounds(&srcRect);
|
|
|
| GrPaint paint;
|
| - paint.addColorTextureProcessor(foregroundTex, foregroundMatrix);
|
| + SkAutoTUnref<GrFragmentProcessor> foregroundDomain(GrTextureDomainEffect::Create(
|
| + foregroundTex, foregroundMatrix,
|
| + GrTextureDomain::MakeTexelDomain(foregroundTex, foreground.bounds()),
|
| + GrTextureDomain::kDecal_Mode,
|
| + GrTextureParams::kNone_FilterMode)
|
| + );
|
| +
|
| + paint.addColorProcessor(foregroundDomain.get());
|
| paint.addColorProcessor(xferProcessor)->unref();
|
| context->drawRect(dst->asRenderTarget(), GrClip::WideOpen(), paint, SkMatrix::I(), srcRect);
|
|
|
|
|