make GIF parse less strict
Some GIFs don't follow the standard very closely. Let them through. See https://github.com/libvips/libvips/issues/1404
This commit is contained in:
parent
81c92242d8
commit
4b677fb16a
|
@ -9,6 +9,7 @@
|
||||||
- fix build with MSVC
|
- fix build with MSVC
|
||||||
- fix a problem with shinkv tail processing [angelmixu]
|
- fix a problem with shinkv tail processing [angelmixu]
|
||||||
- fix a read one byte beyond buffer bug in jpegload
|
- fix a read one byte beyond buffer bug in jpegload
|
||||||
|
- make GIF parsing less strict
|
||||||
|
|
||||||
24/5/19 started 8.8.1
|
24/5/19 started 8.8.1
|
||||||
- improve realpath() use on older libc
|
- improve realpath() use on older libc
|
||||||
|
|
|
@ -22,6 +22,8 @@
|
||||||
* - init pages to 0 before load
|
* - init pages to 0 before load
|
||||||
* 14/2/19
|
* 14/2/19
|
||||||
* - rework as a sequential loader ... simpler, much lower mem use
|
* - rework as a sequential loader ... simpler, much lower mem use
|
||||||
|
* 23/8/18
|
||||||
|
* - allow GIF read errors during header scan
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -601,11 +603,12 @@ vips_foreign_load_gif_header( VipsForeignLoad *load )
|
||||||
|
|
||||||
gif->n_pages = 0;
|
gif->n_pages = 0;
|
||||||
|
|
||||||
do {
|
do {
|
||||||
if( DGifGetRecordType( gif->file, &record ) == GIF_ERROR ) {
|
/* Don't flag errors during header scan. Some corrupt GIFs
|
||||||
vips_foreign_load_gif_error( gif );
|
* will fail.
|
||||||
return( -1 );
|
*/
|
||||||
}
|
if( DGifGetRecordType( gif->file, &record ) == GIF_ERROR )
|
||||||
|
continue;
|
||||||
|
|
||||||
switch( record ) {
|
switch( record ) {
|
||||||
case IMAGE_DESC_RECORD_TYPE:
|
case IMAGE_DESC_RECORD_TYPE:
|
||||||
|
|
Loading…
Reference in New Issue