better handling of truncated PNG files
improve fail support, and bail out sooner see https://github.com/jcupitt/libvips/issues/646
This commit is contained in:
parent
f6ad8465b6
commit
cc38097560
@ -1,5 +1,6 @@
|
|||||||
23/4/17 started 8.5.5
|
23/4/17 started 8.5.5
|
||||||
- doc polishing
|
- doc polishing
|
||||||
|
- more improvements for tuncated PNG files, thanks juyunsang
|
||||||
|
|
||||||
23/4/17 started 8.5.4
|
23/4/17 started 8.5.4
|
||||||
- don't depend on image width when setting n_lines, thanks kleisauke
|
- don't depend on image width when setting n_lines, thanks kleisauke
|
||||||
|
@ -63,6 +63,8 @@
|
|||||||
* - use dbuf for buffer output
|
* - use dbuf for buffer output
|
||||||
* 30/3/17
|
* 30/3/17
|
||||||
* - better behaviour for truncated png files, thanks Yury
|
* - better behaviour for truncated png files, thanks Yury
|
||||||
|
* 26/4/17
|
||||||
|
* - better @fail handling with truncated PNGs
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@ -127,8 +129,8 @@ user_error_function( png_structp png_ptr, png_const_charp error_msg )
|
|||||||
|
|
||||||
/* This function must not return or the default error handler will be
|
/* This function must not return or the default error handler will be
|
||||||
* invoked.
|
* invoked.
|
||||||
longjmp( png_jmpbuf( png_ptr ), -1 );
|
|
||||||
*/
|
*/
|
||||||
|
longjmp( png_jmpbuf( png_ptr ), -1 );
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -409,7 +411,7 @@ png2vips_header( Read *read, VipsImage *out )
|
|||||||
void *profile_copy;
|
void *profile_copy;
|
||||||
|
|
||||||
#ifdef DEBUG
|
#ifdef DEBUG
|
||||||
printf( "png2vips_header: attaching %zd bytes of ICC profile\n",
|
printf( "png2vips_header: attaching %d bytes of ICC profile\n",
|
||||||
proflen );
|
proflen );
|
||||||
printf( "png2vips_header: name = \"%s\"\n", name );
|
printf( "png2vips_header: name = \"%s\"\n", name );
|
||||||
#endif /*DEBUG*/
|
#endif /*DEBUG*/
|
||||||
@ -538,6 +540,11 @@ png2vips_generate( VipsRegion *or,
|
|||||||
printf( "png2vips_generate: thread %p\n",
|
printf( "png2vips_generate: thread %p\n",
|
||||||
g_thread_self() );
|
g_thread_self() );
|
||||||
#endif /*DEBUG*/
|
#endif /*DEBUG*/
|
||||||
|
|
||||||
|
/* ... except if fail is on, in which case we bail out.
|
||||||
|
*/
|
||||||
|
if( read->fail )
|
||||||
|
return( -1 );
|
||||||
}
|
}
|
||||||
|
|
||||||
read->y_pos += 1;
|
read->y_pos += 1;
|
||||||
|
Loading…
Reference in New Issue
Block a user