Differential D22184 Diff 64134 www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_codec_jpeg__codec.cc
Changeset View
Changeset View
Standalone View
Standalone View
www/qt5-webengine/files/patch-src_3rdparty_chromium_ui_gfx_codec_jpeg__codec.cc
--- src/3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc.orig 2018-11-13 18:25:11 UTC | --- src/3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc.orig 2019-05-23 14:39:34.000000000 +0200 | ||||
+++ src/3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc | +++ src/3rdparty/chromium/ui/gfx/codec/jpeg_codec.cc 2019-10-27 22:18:49.231847000 +0100 | ||||
@@ -219,6 +219,7 @@ bool JPEGCodec::Decode(const unsigned char* input, siz | @@ -207,16 +207,17 @@ | ||||
case JCS_GRAYSCALE: | case JCS_GRAYSCALE: | ||||
case JCS_RGB: | case JCS_RGB: | ||||
case JCS_YCbCr: | case JCS_YCbCr: | ||||
+#ifdef JCS_EXTENSIONS | +#ifdef JCS_EXTENSIONS | ||||
// Choose an output colorspace and return if it is an unsupported one. | // Choose an output colorspace and return if it is an unsupported one. | ||||
// Same as JPEGCodec::Encode(), libjpeg-turbo supports all input formats | // Same as JPEGCodec::Encode(), libjpeg-turbo supports all input formats | ||||
// used by Chromium (i.e. RGBA and BGRA) and we just map the input | // used by Chromium (i.e. RGBA and BGRA) and we just map the input | ||||
@@ -237,6 +238,9 @@ bool JPEGCodec::Decode(const unsigned char* input, siz | // parameters to a colorspace. | ||||
NOTREACHED() << "Invalid pixel format"; | if (format == FORMAT_RGBA || | ||||
- (format == FORMAT_SkBitmap && SK_R32_SHIFT == 0)) { | |||||
+ (format == FORMAT_SkBitmap && SK_PMCOLOR_BYTE_ORDER(R, G, B, A))) { | |||||
cinfo->out_color_space = JCS_EXT_RGBX; | |||||
cinfo->output_components = 4; | |||||
} else if (format == FORMAT_BGRA || | |||||
- (format == FORMAT_SkBitmap && SK_B32_SHIFT == 0)) { | |||||
+ (format == FORMAT_SkBitmap && SK_PMCOLOR_BYTE_ORDER(B, G, R, A))) { | |||||
cinfo->out_color_space = JCS_EXT_BGRX; | |||||
cinfo->output_components = 4; | |||||
} else { | |||||
@@ -224,6 +225,9 @@ | |||||
return false; | return false; | ||||
} | } | ||||
break; | |||||
+#else | +#else | ||||
+ cinfo.out_color_space = JCS_RGB; | + cinfo.out_color_space = JCS_RGB; | ||||
+#endif | +#endif | ||||
break; | |||||
case JCS_CMYK: | case JCS_CMYK: | ||||
case JCS_YCCK: | case JCS_YCCK: | ||||
default: |