Revert "Revert "Assert that all GrCaps colortype/format -> swizzle queries are legal.""
This reverts commit ef4d3794a2ddffa877065aa66869c02bb582a479.
Fix for finding cached textures that were made with fallback color types.
Change-Id: Ic5b67801f9275f6a1cbe8373b8cce382f3cedfe7
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/280607
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
diff --git a/src/gpu/GrSurfaceContext.cpp b/src/gpu/GrSurfaceContext.cpp
index 094c8b9..7e18008 100644
--- a/src/gpu/GrSurfaceContext.cpp
+++ b/src/gpu/GrSurfaceContext.cpp
@@ -74,7 +74,10 @@
sk_sp<SkColorSpace> colorSpace,
SkBackingFit fit,
SkBudgeted budgeted) {
- GrSwizzle swizzle = context->priv().caps()->getReadSwizzle(format, colorType);
+ GrSwizzle swizzle("rgba");
+ if (!context->priv().caps()->isFormatCompressed(format)) {
+ swizzle = context->priv().caps()->getReadSwizzle(format, colorType);
+ }
sk_sp<GrTextureProxy> proxy = context->priv().proxyProvider()->createProxy(
format, dimensions, renderable, renderTargetSampleCnt, mipMapped, fit, budgeted,