Index: src/gpu/GrTextureProvider.cpp |
diff --git a/src/gpu/GrTextureProvider.cpp b/src/gpu/GrTextureProvider.cpp |
index cfa6994c4b6d043b616aa335d48613ec11cbdfe0..d15ff19265214585abb52f710e456d8ece06f360 100644 |
--- a/src/gpu/GrTextureProvider.cpp |
+++ b/src/gpu/GrTextureProvider.cpp |
@@ -40,7 +40,25 @@ GrTexture* GrTextureProvider::createTexture(const GrSurfaceDesc& desc, bool budg |
texture->unref(); |
} |
} |
- return fGpu->createTexture(desc, budgeted, srcData, rowBytes); |
+ |
+ SkMipMapLevel level(srcData, rowBytes); |
+ const int levelCount = 1; |
+ SkTArray<SkMipMapLevel> texels(levelCount); |
+ texels.push_back(level); |
+ return createTexture(desc, budgeted, texels); |
bsalomon
2015/08/26 18:30:11
style nit, we prepend method calls with "this->"
cblume
2015/08/26 18:58:00
Done.
|
+} |
+ |
+GrTexture* GrTextureProvider::createTexture(const GrSurfaceDesc& desc, bool budgeted, |
+ SkTArray<SkMipMapLevel>& texels) { |
+ if (this->isAbandoned()) { |
+ return NULL; |
+ } |
+ if ((desc.fFlags & kRenderTarget_GrSurfaceFlag) && |
+ !fGpu->caps()->isConfigRenderable(desc.fConfig, desc.fSampleCnt > 0)) { |
+ return NULL; |
+ } |
+ |
+ return fGpu->createTexture(desc, budgeted, texels); |
} |
GrTexture* GrTextureProvider::refScratchTexture(const GrSurfaceDesc& desc, ScratchTexMatch match, |