diff options
Diffstat (limited to 'src/gpu/effects/GrTextureStripAtlas.cpp')
-rw-r--r-- | src/gpu/effects/GrTextureStripAtlas.cpp | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/gpu/effects/GrTextureStripAtlas.cpp b/src/gpu/effects/GrTextureStripAtlas.cpp index f49830481b..6bc7ec0480 100644 --- a/src/gpu/effects/GrTextureStripAtlas.cpp +++ b/src/gpu/effects/GrTextureStripAtlas.cpp @@ -8,7 +8,6 @@ #include "GrTextureStripAtlas.h" #include "GrContext.h" #include "GrContextPriv.h" -#include "GrResourceProvider.h" #include "GrSurfaceContext.h" #include "SkGr.h" #include "SkPixelRef.h" @@ -210,14 +209,15 @@ void GrTextureStripAtlas::lockTexture() { // MDB TODO (caching): this side-steps the issue of proxies with unique IDs sk_sp<GrTexture> texture(fDesc.fContext->textureProvider()->findAndRefTextureByUniqueKey(key)); if (!texture) { - texture.reset(fDesc.fContext->textureProvider()->createTexture( - texDesc, SkBudgeted::kYes, - nullptr, 0, - GrResourceProvider::kNoPendingIO_Flag)); + texture.reset(fDesc.fContext->textureProvider()->createTexture(texDesc, SkBudgeted::kYes, + nullptr, 0)); if (!texture) { return; } + // We will be issuing writes to the surface using kDontFlush_PixelOpsFlag, so we + // need to make sure any existing IO is flushed + fDesc.fContext->flushSurfaceIO(texture.get()); fDesc.fContext->textureProvider()->assignUniqueKeyToTexture(key, texture.get()); // This is a new texture, so all of our cache info is now invalid this->initLRU(); |