Index: dm/DMSrcSink.cpp |
diff --git a/dm/DMSrcSink.cpp b/dm/DMSrcSink.cpp |
index caf6f52fe24899bd45c24f2ae966306a13fa8027..fcc4a33a1aa22249080bb65ed3bd58978a2e44f6 100644 |
--- a/dm/DMSrcSink.cpp |
+++ b/dm/DMSrcSink.cpp |
@@ -896,6 +896,9 @@ Error ColorCodecSrc::draw(SkCanvas* canvas) const { |
if (kUnpremul_SkAlphaType == decodeInfo.alphaType()) { |
decodeInfo = decodeInfo.makeAlphaType(kPremul_SkAlphaType); |
} |
+ if (kRGBA_F16_SkColorType == fColorType) { |
+ decodeInfo = decodeInfo.makeColorSpace(decodeInfo.colorSpace()->makeLinearGamma()); |
+ } |
SkImageInfo bitmapInfo = decodeInfo; |
if (kRGBA_8888_SkColorType == decodeInfo.colorType() || |