| Index: src/core/SkImageFilter.cpp | 
| diff --git a/src/core/SkImageFilter.cpp b/src/core/SkImageFilter.cpp | 
| index 6456d17a6986df4a062f0ac53d32429d91481d1f..666b71983114f9b4321fd735ffd8c7bb438220f7 100644 | 
| --- a/src/core/SkImageFilter.cpp | 
| +++ b/src/core/SkImageFilter.cpp | 
| @@ -255,13 +255,14 @@ bool SkImageFilter::filterImageGPU(Proxy* proxy, const SkBitmap& src, const Cont | 
| desc.fHeight = bounds.height(); | 
| desc.fConfig = kRGBA_8888_GrPixelConfig; | 
|  | 
| -    GrAutoScratchTexture dst(context, desc); | 
| -    if (NULL == dst.texture()) { | 
| +    SkAutoTUnref<GrTexture> dst( | 
| +        context->refScratchTexture(desc, GrContext::kApprox_ScratchTexMatch)); | 
| +    if (!dst) { | 
| return false; | 
| } | 
| GrContext::AutoMatrix am; | 
| am.setIdentity(context); | 
| -    GrContext::AutoRenderTarget art(context, dst.texture()->asRenderTarget()); | 
| +    GrContext::AutoRenderTarget art(context, dst->asRenderTarget()); | 
| GrContext::AutoClip acs(context, dstRect); | 
| GrFragmentProcessor* fp; | 
| offset->fX = bounds.left(); | 
| @@ -275,8 +276,7 @@ bool SkImageFilter::filterImageGPU(Proxy* proxy, const SkBitmap& src, const Cont | 
| paint.addColorProcessor(fp)->unref(); | 
| context->drawRectToRect(paint, dstRect, srcRect); | 
|  | 
| -        SkAutoTUnref<GrTexture> resultTex(dst.detach()); | 
| -        WrapTexture(resultTex, bounds.width(), bounds.height(), result); | 
| +        WrapTexture(dst, bounds.width(), bounds.height(), result); | 
| return true; | 
| } | 
| #endif | 
|  |