You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Decoder for ISO files contains a check that all "embedded PNG images can only be of the 32BPP RGBA format":
// Embedded PNG images can only be of the 32BPP RGBA format.// https://blogs.msdn.microsoft.com/oldnewthing/20101022-00/?p=12473/if decoder.color_type() != ColorType::Rgba8{returnErr(DecoderError::PngNotRgba.into());}
If I understand that article from Microsoft from 2010, its purpose is (was?) to prevent various programs from crashing too badly when trying to parse some ICO files with some different formats.
The problem is that I'm trying to parse and re-encode this ICO file, but it fails because of this exact check. It seems this happens because that ICO uses Rgb8 format instead of Rgba8. However, when I completely removed that check, everything was fine and ICO (both original and re-encoded) is correctly displayed on Windows and in programs.
Is that check still needed or can be completely removed? Or maybe it just needs another condition for Rgb8 format?
The text was updated successfully, but these errors were encountered:
Is that check still needed or can be completely removed? Or maybe it just needs another condition for Rgb8 format?
We need to do a check to find out if we are one of those programs crashing badly but I don't see any technical obstacle to support this as well. And also find out if the mask is supposed to be applied in this case, or to be ignored. Although I suppose this could be worked out incrementally, not supporting this file kind at all is worse to the end-user than ignoring its alpha mask (and a new issue can be opened if this is required).
Decoder for ISO files contains a check that all "embedded PNG images can only be of the 32BPP RGBA format":
If I understand that article from Microsoft from 2010, its purpose is (was?) to prevent various programs from crashing too badly when trying to parse some ICO files with some different formats.
The problem is that I'm trying to parse and re-encode this ICO file, but it fails because of this exact check. It seems this happens because that ICO uses Rgb8 format instead of Rgba8. However, when I completely removed that check, everything was fine and ICO (both original and re-encoded) is correctly displayed on Windows and in programs.
Is that check still needed or can be completely removed? Or maybe it just needs another condition for Rgb8 format?
The text was updated successfully, but these errors were encountered: