Index: src/gpu/GrGpu.cpp |
diff --git a/src/gpu/GrGpu.cpp b/src/gpu/GrGpu.cpp |
index 111f632502f075632028689fa64fcf483f7e9e29..9b828753f0cf378cb097e7ff7820c38f30fff99f 100644 |
--- a/src/gpu/GrGpu.cpp |
+++ b/src/gpu/GrGpu.cpp |
@@ -133,6 +133,26 @@ GrTexture* GrGpu::createTexture(const GrTextureDesc& desc, |
return tex; |
} |
+GrTexture* GrGpu::createCompressedTexture(const GrTextureDesc& desc, const void* srcData) { |
+ if (kUnknown_GrPixelConfig == desc.fConfig || |
+ !GrPixelConfigIsCompressed(desc.fConfig)) { |
+ return NULL; |
+ } |
+ |
+ // We shouldn't be rendering into this |
+ if (desc.fFlags & kRenderTarget_GrTextureFlagBit) { |
+ return NULL; |
+ } |
+ |
+ // Do we support this format? |
+ if (!this->caps()->isConfigTexturable(desc.fConfig)) { |
+ return NULL; |
+ } |
+ |
+ this->handleDirtyContext(); |
+ return this->onCreateCompressedTexture(desc, srcData); |
+} |
+ |
bool GrGpu::attachStencilBufferToRenderTarget(GrRenderTarget* rt) { |
SkASSERT(NULL == rt->getStencilBuffer()); |
GrStencilBuffer* sb = |