Do not modify decoder when determining image-format
We should not configure the decoder when just determining the image- format. Doing so can cause all versions of libpng to print a warning, and some versions to fail to decode. The code appears to be a leftover from when the image-format logic was copied out of the introduction of the decoding method, where the proper settings are still applied. Task-number: QTBUG-46233 Change-Id: I6619728804f040ae6c9d637c7298a8586e22499e Reviewed-by: Andy Shaw <andy.shaw@theqtcompany.com> Reviewed-by: aavit <eirik.aavitsland@theqtcompany.com>
This commit is contained in:
parent
938f9fc0f8
commit
d4a296b538
@ -674,16 +674,9 @@ QImage::Format QPngHandlerPrivate::readImageFormat()
|
||||
&& num_palette <= 256)
|
||||
{
|
||||
// 1-bit and 8-bit color
|
||||
if (bit_depth != 1)
|
||||
png_set_packing(png_ptr);
|
||||
png_read_update_info(png_ptr, info_ptr);
|
||||
png_get_IHDR(png_ptr, info_ptr, &width, &height, &bit_depth, &color_type, 0, 0, 0);
|
||||
format = bit_depth == 1 ? QImage::Format_Mono : QImage::Format_Indexed8;
|
||||
} else {
|
||||
// 32-bit
|
||||
if (bit_depth == 16)
|
||||
png_set_strip_16(png_ptr);
|
||||
|
||||
format = QImage::Format_ARGB32;
|
||||
// Only add filler if no alpha, or we can get 5 channel data.
|
||||
if (!(color_type & PNG_COLOR_MASK_ALPHA)
|
||||
|
Loading…
x
Reference in New Issue
Block a user