| Index: src/android/SkBitmapRegionCodec.cpp
|
| diff --git a/src/android/SkBitmapRegionCodec.cpp b/src/android/SkBitmapRegionCodec.cpp
|
| index a335432b31a0d03d473b7647168aac123c42228c..9c21484ec55294626913aa34183a3d1fa25ae588 100644
|
| --- a/src/android/SkBitmapRegionCodec.cpp
|
| +++ b/src/android/SkBitmapRegionCodec.cpp
|
| @@ -52,9 +52,12 @@ bool SkBitmapRegionCodec::decodeRegion(SkBitmap* bitmap, SkBRDAllocator* allocat
|
| // Create the image info for the decode
|
| SkColorType dstColorType = fCodec->computeOutputColorType(prefColorType);
|
| SkAlphaType dstAlphaType = fCodec->computeOutputAlphaType(requireUnpremul);
|
| - SkImageInfo decodeInfo = fCodec->getInfo().makeWH(scaledSize.width(), scaledSize.height())
|
| - .makeColorType(dstColorType)
|
| - .makeAlphaType(dstAlphaType);
|
| +
|
| + // Enable legacy behavior to avoid any gamma correction. Android's assets are
|
| + // adjusted to expect a non-gamma correct premultiply.
|
| + sk_sp<SkColorSpace> colorSpace = nullptr;
|
| + SkImageInfo decodeInfo = SkImageInfo::Make(scaledSize.width(), scaledSize.height(),
|
| + dstColorType, dstAlphaType, colorSpace);
|
|
|
| // Construct a color table for the decode if necessary
|
| SkAutoTUnref<SkColorTable> colorTable(nullptr);
|
|
|