GIFImageDecoder: Can't render some corrupted GIF images of the 88x31 GIF Collection
Non-cocoa ports are uing GIFImageDecoder.
It can't render some images of https://cyber.dabamos.de/88x31/ , but Safari, Chrome and Firefox can.
GIFImageReader.cpp determines they are corrupted in the following condition.
`*currentComponent` was 0.
> // If we get anything other than ',' (image separator), '!'
> // (extension), or ';' (trailer), there is extraneous data
> // between blocks. The GIF87a spec tells us to keep reading
> // until we find an image separator, but GIF89a says such
> // a file is corrupt. We follow GIF89a and bail out.
> if (*currentComponent != ',')
> return false;
10635@main added the code.
These GIF contain the following comments:
> http://www.rtlsoft.com/animagic Created with Animagic GIF V 0.93 by Right to Left Software Inc.
> http://www.rtlsoft.com/animagic Created with Animagic GIF V 1.02a by Right to Left Software Inc
> http://www.rtlsoft.com/animagic Created with Animagic GIF V 1.05a by Right to Left Software Inc. To suppress this message in the registered version uncheck "Options | Animagic comment frame"
242957 - Be more tolerant about corrupted GIF files - chromium
Issue 15914009: More tolerant about malformed GIF files - Code Review
Created attachment 460405 [details]
Created attachment 460410 [details]
Pull request: https://github.com/WebKit/WebKit/pull/1678
Comment on attachment 460410 [details]
View in context: https://bugs.webkit.org/attachment.cgi?id=460410&action=review
> +GIFImageReader: Be torrent about invalid GIF files without a trailer(;)
torrent -> tolerant
Committed 251813@main (9bdfe6d4600b): <https://commits.webkit.org/251813@main>
Reviewed commits have been landed. Closing PR #1678 and removing active labels.