Merge branch '8.5'

This commit is contained in:
John Cupitt 2017-05-19 16:16:16 +01:00
commit 5216d75b83
3 changed files with 19 additions and 9 deletions

View File

@ -9,6 +9,9 @@
- add vips_thumbnail_image()
- better prefix guessing on Windows, thanks tumagonx
19/5/17 started 8.5.6
- tiff read with start page > 0 could break edge tiles or strips
23/4/17 started 8.5.5
- doc polishing
- more improvements for truncated PNG files, thanks juyunsang

View File

@ -37,9 +37,9 @@ VIPS_VERSION_STRING=$VIPS_VERSION-`date`
# binary interface changes backwards compatible?: increment age
# binary interface changes not backwards compatible?: reset age to 0
LIBRARY_CURRENT=49
LIBRARY_REVISION=5
LIBRARY_AGE=7
LIBRARY_CURRENT=50
LIBRARY_REVISION=0
LIBRARY_AGE=8
# patched into include/vips/version.h
AC_SUBST(VIPS_VERSION)

View File

@ -175,6 +175,8 @@
* - if rows_per_strip is large, read with scanline API instead
* 9/5/17
* - remove missing res warning
* 19/5/17
* - page > 0 could break edge tiles or strips
*/
/*
@ -1471,8 +1473,11 @@ rtiff_fill_region( VipsRegion *out, void *seq, void *a, void *b, gboolean *stop
x = 0;
while( x < r->width ) {
int page_no = rtiff->page + (r->top + y) /
rtiff->header.height;
/* page_no is within this toilet roll image, not tiff
* file page number ... add the number of the start
* page to get that.
*/
int page_no = (r->top + y) / rtiff->header.height;
int page_y = (r->top + y) % rtiff->header.height;
/* Coordinate of the tile on this page that xy falls in.
@ -1480,7 +1485,7 @@ rtiff_fill_region( VipsRegion *out, void *seq, void *a, void *b, gboolean *stop
int xs = ((r->left + x) / tile_width) * tile_width;
int ys = (page_y / tile_height) * tile_height;
if( rtiff_set_page( rtiff, page_no ) ||
if( rtiff_set_page( rtiff, rtiff->page + page_no ) ||
rtiff_read_tile( rtiff, buf, xs, ys ) ) {
VIPS_GATE_STOP( "rtiff_fill_region: work" );
return( -1 );
@ -1746,9 +1751,11 @@ rtiff_stripwise_generate( VipsRegion *or,
y = 0;
while( y < r->height ) {
/* Page number, position within this page.
/* page_no is within this toilet roll image, not tiff
* file page number ... add the number of the start
* page to get that.
*/
int page_no = rtiff->page + (r->top + y) / page_height;
int page_no = (r->top + y) / page_height;
int y_page = (r->top + y) % page_height;
/* Strip number.
@ -1787,7 +1794,7 @@ rtiff_stripwise_generate( VipsRegion *or,
g_assert( hit.height > 0 );
if( rtiff_set_page( rtiff, page_no ) ) {
if( rtiff_set_page( rtiff, rtiff->page + page_no ) ) {
VIPS_GATE_STOP( "rtiff_stripwise_generate: work" );
return( -1 );
}