Index: src/gpu/GrGpu.cpp |
diff --git a/src/gpu/GrGpu.cpp b/src/gpu/GrGpu.cpp |
index d46d09d5c7b5544ff828fa552235575ceecef67a..728fb880622010fa9495932d467b7f6df7d3ff04 100644 |
--- a/src/gpu/GrGpu.cpp |
+++ b/src/gpu/GrGpu.cpp |
@@ -199,12 +199,20 @@ GrRenderTarget* GrGpu::wrapBackendRenderTarget(const GrBackendRenderTargetDesc& |
GrVertexBuffer* GrGpu::createVertexBuffer(size_t size, bool dynamic) { |
this->handleDirtyContext(); |
- return this->onCreateVertexBuffer(size, dynamic); |
+ GrVertexBuffer* vb = this->onCreateVertexBuffer(size, dynamic); |
+ if (!this->caps()->reuseScratchBuffers()) { |
+ vb->resourcePriv().removeScratchKey(); |
+ } |
+ return vb; |
} |
GrIndexBuffer* GrGpu::createIndexBuffer(size_t size, bool dynamic) { |
this->handleDirtyContext(); |
- return this->onCreateIndexBuffer(size, dynamic); |
+ GrIndexBuffer* ib = this->onCreateIndexBuffer(size, dynamic); |
+ if (!this->caps()->reuseScratchBuffers()) { |
+ ib->resourcePriv().removeScratchKey(); |
+ } |
+ return ib; |
} |
void GrGpu::clear(const SkIRect* rect, |