| Index: src/gpu/GrLayerHoister.cpp
|
| diff --git a/src/gpu/GrLayerHoister.cpp b/src/gpu/GrLayerHoister.cpp
|
| index 2bf1abb5fdb3618debdac00385c1d72cd1d35783..004e4d0e6eb38ab190e6d16a402b0e5d1c78d48f 100644
|
| --- a/src/gpu/GrLayerHoister.cpp
|
| +++ b/src/gpu/GrLayerHoister.cpp
|
| @@ -322,7 +322,7 @@ void GrLayerHoister::FilterLayer(GrContext* context,
|
| }
|
|
|
| SkIRect newRect = SkIRect::MakeWH(filteredBitmap.width(), filteredBitmap.height());
|
| - layer->setTexture(filteredBitmap.getTexture(), newRect);
|
| + layer->setTexture(filteredBitmap.getTexture(), newRect, false);
|
| layer->setOffset(offset);
|
| }
|
|
|
| @@ -380,13 +380,22 @@ void GrLayerHoister::UnlockLayers(GrContext* context,
|
| SkDEBUGCODE(layerCache->validate();)
|
| }
|
|
|
| -void GrLayerHoister::PurgeCache(GrContext* context) {
|
| -#if !GR_CACHE_HOISTED_LAYERS
|
| +void GrLayerHoister::Begin(GrContext* context) {
|
| + GrLayerCache* layerCache = context->getLayerCache();
|
| +
|
| + layerCache->begin();
|
| +}
|
| +
|
| +void GrLayerHoister::End(GrContext* context) {
|
| GrLayerCache* layerCache = context->getLayerCache();
|
|
|
| +#if !GR_CACHE_HOISTED_LAYERS
|
| +
|
| // This code completely clears out the atlas. It is required when
|
| // caching is disabled so the atlas doesn't fill up and force more
|
| // free floating layers
|
| layerCache->purgeAll();
|
| #endif
|
| +
|
| + layerCache->end();
|
| }
|
|
|