diff options
author | erouault <erouault> | 2017-07-24 09:52:23 +0000 |
---|---|---|
committer | erouault <erouault> | 2017-07-24 09:52:23 +0000 |
commit | 594737f09fef0cfdee0db48017e97a3117e29bab (patch) | |
tree | 4c44fc281ebe6a40a3cace4b71589befd07811d3 | |
parent | 13e02541f408b2e7fad7427d3645958d8eff92cc (diff) | |
download | libtiff-594737f09fef0cfdee0db48017e97a3117e29bab.tar.gz |
* libtiff/tif_getimage.c: gtTileContig() and gtTileSeparate():
properly break from loops on error when stoponerr is set, instead
of going on iterating on row based loop.
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | libtiff/tif_getimage.c | 6 |
2 files changed, 9 insertions, 3 deletions
@@ -1,3 +1,9 @@ +2017-07-24 Even Rouault <even.rouault at spatialys.com> + + * libtiff/tif_getimage.c: gtTileContig() and gtTileSeparate(): + properly break from loops on error when stoponerr is set, instead + of going on iterating on row based loop. + 2017-07-18 Even Rouault <even.rouault at spatialys.com> * libtiff/tif_luv.c: LogLuvInitState(): avoid excessive memory diff --git a/libtiff/tif_getimage.c b/libtiff/tif_getimage.c index c6041f67..b588bf71 100644 --- a/libtiff/tif_getimage.c +++ b/libtiff/tif_getimage.c @@ -1,4 +1,4 @@ -/* $Id: tif_getimage.c,v 1.110 2017-07-04 13:28:42 erouault Exp $ */ +/* $Id: tif_getimage.c,v 1.111 2017-07-24 09:52:23 erouault Exp $ */ /* * Copyright (c) 1991-1997 Sam Leffler @@ -661,7 +661,7 @@ gtTileContig(TIFFRGBAImage* img, uint32* raster, uint32 w, uint32 h) leftmost_fromskew = img->col_offset % tw; leftmost_tw = tw - leftmost_fromskew; leftmost_toskew = toskew + leftmost_fromskew; - for (row = 0; row < h; row += nrow) + for (row = 0; ret != 0 && row < h; row += nrow) { rowstoread = th - (row + img->row_offset) % th; nrow = (row + rowstoread > h ? h - row : rowstoread); @@ -795,7 +795,7 @@ gtTileSeparate(TIFFRGBAImage* img, uint32* raster, uint32 w, uint32 h) leftmost_fromskew = img->col_offset % tw; leftmost_tw = tw - leftmost_fromskew; leftmost_toskew = toskew + leftmost_fromskew; - for (row = 0; row < h; row += nrow) + for (row = 0; ret != 0 && row < h; row += nrow) { rowstoread = th - (row + img->row_offset) % th; nrow = (row + rowstoread > h ? h - row : rowstoread); |