| Index: src/gpu/GrLayerCache.cpp
|
| diff --git a/src/gpu/GrLayerCache.cpp b/src/gpu/GrLayerCache.cpp
|
| index 58994790b732e3b3e515652e85c3887449020904..2c97387c7f93fdcfa8851e3773f05c21c8d31118 100644
|
| --- a/src/gpu/GrLayerCache.cpp
|
| +++ b/src/gpu/GrLayerCache.cpp
|
| @@ -198,8 +198,10 @@ bool GrLayerCache::lock(GrCachedLayer* layer, const GrTextureDesc& desc) {
|
| // The texture wouldn't fit in the cache - give it it's own texture.
|
| // This path always uses a new scratch texture and (thus) doesn't cache anything.
|
| // This can yield a lot of re-rendering
|
| - layer->setTexture(fContext->lockAndRefScratchTexture(desc, GrContext::kApprox_ScratchTexMatch),
|
| - GrIRect16::MakeWH(SkToS16(desc.fWidth), SkToS16(desc.fHeight)));
|
| + SkAutoTUnref<GrTexture> tex(fContext->lockAndRefScratchTexture(desc,
|
| + GrContext::kApprox_ScratchTexMatch));
|
| +
|
| + layer->setTexture(tex, GrIRect16::MakeWH(SkToS16(desc.fWidth), SkToS16(desc.fHeight)));
|
| layer->setLocked(true);
|
| return false;
|
| }
|
|
|