earlier quit of dzsave on kill

We were only testing "killed" once for each strip of tiles. Check on each
tile as well to make set_kill() faster.

see https://github.com/kleisauke/net-vips/issues/179
This commit is contained in:
John Cupitt 2022-09-21 11:48:48 +01:00
parent 907d17cd06
commit fa4b80b74b
2 changed files with 7 additions and 0 deletions

View File

@ -3,6 +3,7 @@
- fix 8 bit pallete PNG save [lovell]
- fix null string in buffer print [pclewis]
- revise caching of seq mode loaders [jcupitt]
- reduce latency on dzsave kill [kleisauke]
24/7/22 started 8.13.1
- fix im7 feature detection in meson

View File

@ -1828,6 +1828,12 @@ strip_work( VipsThreadState *state, void *a )
printf( "strip_work\n" );
#endif /*DEBUG_VERBOSE*/
/* killed is checked by sink_disc, but that's only once per strip, and
* they can be huge. Check per output tile as well.
*/
if( vips_image_iskilled( save->in ) )
return( -1 );
/* If we are centering we may be outside the real pixels. Skip in
* this case, and the viewer will display blank.png for us.
*/