diff options
-rw-r--r-- | html/libtiff.html | 28 | ||||
-rw-r--r-- | tools/tiff2ps.c | 12 |
2 files changed, 22 insertions, 18 deletions
diff --git a/html/libtiff.html b/html/libtiff.html index 56535d97..d6b5eab3 100644 --- a/html/libtiff.html +++ b/html/libtiff.html @@ -518,9 +518,9 @@ TIFFGetField(tif, TIFFTAG_IMAGELENGTH, &imagelength);<br> buf = _TIFFmalloc(TIFFScanlineSize(tif));<br> for (row = 0; row < imagelength; row++)<br> - tiffreadscanline(tif, buf, row);<br> - _tifffree(buf);<br> - tiffclose(tif);<br> + TIFFReadScanline(tif, buf, row, 0);<br> + _TIFFfree(buf);<br> + TIFFClose(tif);<br> }<br> }</tt> </p> @@ -547,17 +547,17 @@ buf = _TIFFmalloc(TIFFScanlineSize(tif));<br> if (config == PLANARCONFIG_CONTIG) {<br> for (row = 0; row < imagelength; row++)<br> - tiffreadscanline(tif, buf, row);<br> + TIFFReadScanline(tif, buf, row, 0);<br> } else if (config == planarconfig_separate) {<br> uint16 s, nsamples;<br> <br> tiffgetfield(tif, tifftag_samplesperpixel, &nsamples);<br> for (s = 0; s < nsamples; s++)<br> for (row = 0; row < imagelength; row++)<br> - tiffreadscanline(tif, buf, row, s);<br> + TIFFReadScanline(tif, buf, row, s);<br> }<br> - _tifffree(buf);<br> - tiffclose(tif);<br> + _TIFFfree(buf);<br> + TIFFClose(tif);<br> }<br> }</tt> </p> @@ -568,7 +568,7 @@ <p style="margin-left: 40px"> <tt> for (row = 0; row < imagelength; row++)<br> for (s = 0; s < nsamples; s++)<br> - tiffreadscanline(tif, buf, row, s);</tt> + TIFFReadScanline(tif, buf, row, s);</tt> </p> <p> ...then problems would arise if <tt>RowsPerStrip</tt> was not one @@ -601,8 +601,8 @@ buf = _TIFFmalloc(TIFFStripSize(tif));<br> for (strip = 0; strip < tiffnumberofstrips(tif); strip++)<br> tiffreadencodedstrip(tif, strip, buf, (tsize_t) -1);<br> - _tifffree(buf);<br> - tiffclose(tif);<br> + _TIFFfree(buf);<br> + TIFFClose(tif);<br> }<br> }</tt> </p> @@ -702,8 +702,8 @@ for (y = 0; y < imagelength; y += tilelength)<br> for (x = 0; x < imagewidth; x += tilewidth)<br> tiffreadtile(tif, buf, x, y, 0);<br> - _tifffree(buf);<br> - tiffclose(tif);<br> + _TIFFfree(buf);<br> + TIFFClose(tif);<br> }<br> }</tt> </p> @@ -729,8 +729,8 @@ buf = _TIFFmalloc(TIFFTileSize(tif));<br> for (tile = 0; tile < tiffnumberoftiles(tif); tile++)<br> tiffreadencodedtile(tif, tile, buf, (tsize_t) -1);<br> - _tifffree(buf);<br> - tiffclose(tif);<br> + _TIFFfree(buf);<br> + TIFFClose(tif);<br> }<br> }</tt> </p> diff --git a/tools/tiff2ps.c b/tools/tiff2ps.c index 5874aba6..31a318a8 100644 --- a/tools/tiff2ps.c +++ b/tools/tiff2ps.c @@ -2467,8 +2467,10 @@ PSDataColorContig(FILE* fd, TIFF* tif, uint32 w, uint32 h, int nc) } if (alpha) { int adjust; - cc = 0; - for (; (cc + nc) <= tf_bytesperrow; cc += samplesperpixel) { + /* + * the code inside this loop reads nc bytes + 1 extra byte (for adjust) + */ + for (cc = 0; (cc + nc) < tf_bytesperrow; cc += samplesperpixel) { DOBREAK(breaklen, nc, fd); /* * For images with alpha, matte against @@ -2486,8 +2488,10 @@ PSDataColorContig(FILE* fd, TIFF* tif, uint32 w, uint32 h, int nc) cp += es; } } else { - cc = 0; - for (; (cc + nc) <= tf_bytesperrow; cc += samplesperpixel) { + /* + * the code inside this loop reads nc bytes per iteration + */ + for (cc = 0; (cc + nc) <= tf_bytesperrow; cc += samplesperpixel) { DOBREAK(breaklen, nc, fd); switch (nc) { case 4: c = *cp++; PUTHEX(c,fd); |