diff options
author | 2018-02-02 15:48:33 -0500 | |
---|---|---|
committer | 2018-02-02 21:16:19 +0000 | |
commit | fb3abcd8c335132b6ad8434a171516102bbf4495 (patch) | |
tree | a61244af55debc848e27716742f209dc29d63bc1 /src/gpu/GrProxyProvider.cpp | |
parent | 1d8726fbed346dd2b96d4ef3106262e3d3dee5f4 (diff) |
Update GrYUVGenerator to upload to texture vs use writePixels
Bug: skia:
Change-Id: I891ba25d2018008a32ef01608da9209cf2642b2e
Reviewed-on: https://skia-review.googlesource.com/102902
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Diffstat (limited to 'src/gpu/GrProxyProvider.cpp')
-rw-r--r-- | src/gpu/GrProxyProvider.cpp | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/src/gpu/GrProxyProvider.cpp b/src/gpu/GrProxyProvider.cpp index ec05243d18..e453246b62 100644 --- a/src/gpu/GrProxyProvider.cpp +++ b/src/gpu/GrProxyProvider.cpp @@ -182,7 +182,8 @@ sk_sp<GrTextureProxy> GrProxyProvider::createTextureProxy(const GrSurfaceDesc& d if (srcData) { GrMipLevel mipLevel = { srcData, rowBytes }; - sk_sp<GrTexture> tex = fResourceProvider->createTexture(desc, budgeted, mipLevel); + sk_sp<GrTexture> tex = fResourceProvider->createTexture(desc, budgeted, + SkBackingFit::kExact, mipLevel); if (!tex) { return nullptr; } @@ -197,7 +198,8 @@ sk_sp<GrTextureProxy> GrProxyProvider::createTextureProxy(sk_sp<SkImage> srcImag GrSurfaceFlags flags, GrSurfaceOrigin origin, int sampleCnt, - SkBudgeted budgeted) { + SkBudgeted budgeted, + SkBackingFit fit) { ASSERT_SINGLE_OWNER SkASSERT(srcImage); @@ -214,7 +216,7 @@ sk_sp<GrTextureProxy> GrProxyProvider::createTextureProxy(sk_sp<SkImage> srcImag desc.fConfig = SkImageInfo2GrPixelConfig(as_IB(srcImage)->onImageInfo(), *this->caps()); sk_sp<GrTextureProxy> proxy = this->createLazyProxy( - [desc, budgeted, srcImage] + [desc, budgeted, srcImage, fit] (GrResourceProvider* resourceProvider, GrSurfaceOrigin* /*outOrigin*/) { if (!resourceProvider) { // Nothing to clean up here. Once the proxy (and thus lambda) is deleted the ref @@ -225,8 +227,8 @@ sk_sp<GrTextureProxy> GrProxyProvider::createTextureProxy(sk_sp<SkImage> srcImag SkAssertResult(srcImage->peekPixels(&pixMap)); GrMipLevel mipLevel = { pixMap.addr(), pixMap.rowBytes() }; - return resourceProvider->createTexture(desc, budgeted, mipLevel); - }, desc, GrMipMapped::kNo, SkBackingFit::kExact, budgeted); + return resourceProvider->createTexture(desc, budgeted, fit, mipLevel); + }, desc, GrMipMapped::kNo, fit, budgeted); if (fResourceProvider) { // In order to reuse code we always create a lazy proxy. When we aren't in DDL mode however |