14f5e0202SAndrey Kiselev<HTML> 24f5e0202SAndrey Kiselev<HEAD> 34f5e0202SAndrey Kiselev<TITLE> 44f5e0202SAndrey Kiselev Changes in TIFF v3.7.0alpha 54f5e0202SAndrey Kiselev</TITLE> 64f5e0202SAndrey Kiselev</HEAD> 74f5e0202SAndrey Kiselev 84f5e0202SAndrey Kiselev<BODY BGCOLOR=white> 94f5e0202SAndrey Kiselev<FONT FACE="Helvetica, Arial, Sans"> 104f5e0202SAndrey Kiselev<FONT FACE="Helvetica, Arial, Sans"> 114f5e0202SAndrey Kiselev 124f5e0202SAndrey Kiselev<BASEFONT SIZE=4> 134f5e0202SAndrey Kiselev<B><FONT SIZE=+3>T</FONT>IFF <FONT SIZE=+2>C</FONT>HANGE <FONT SIZE=+2>I</FONT>NFORMATION</B> 144f5e0202SAndrey Kiselev<BASEFONT SIZE=3> 154f5e0202SAndrey Kiselev 164f5e0202SAndrey Kiselev<UL> 174f5e0202SAndrey Kiselev<HR SIZE=4 WIDTH=65% ALIGN=left> 18b0a93ca8SAndrey Kiselev<B>Current Version</B>: v3.7.0alpha<BR> 19b0a93ca8SAndrey Kiselev<B>Previous Version</B>: <A HREF=v3.6.1.html>v3.6.1</a><BR> 20*d4dd6cccSBob Friesenhahn<B>Master FTP Site</B>: <A HREF="ftp://download.osgeo.org/libtiff"> 21*d4dd6cccSBob Friesenhahndownload.osgeo.org</a>, directory pub/libtiff</A><BR> 22*d4dd6cccSBob Friesenhahn<B>Master HTTP Site</B>: <A HREF="http://www.simplesystems.org/libtiff/"> 23*d4dd6cccSBob Friesenhahnhttp://www.simplesystems.org/libtiff/</a> 244f5e0202SAndrey Kiselev<HR SIZE=4 WIDTH=65% ALIGN=left> 254f5e0202SAndrey Kiselev</UL> 264f5e0202SAndrey Kiselev 274f5e0202SAndrey Kiselev<P> 284f5e0202SAndrey KiselevThis document describes the changes made to the software between the 294f5e0202SAndrey Kiselev<I>previous</I> and <I>current</I> versions (see above). 304f5e0202SAndrey KiselevIf you don't find something listed here, then it was not done in this 314f5e0202SAndrey Kiselevtimeframe, or it was not considered important enough to be mentioned. 324f5e0202SAndrey KiselevThe following information is located here: 334f5e0202SAndrey Kiselev<UL> 344f5e0202SAndrey Kiselev<LI><A HREF="#hightlights">Major Changes</A> 354f5e0202SAndrey Kiselev<LI><A HREF="#configure">Changes in the software configuration</A> 364f5e0202SAndrey Kiselev<LI><A HREF="#libtiff">Changes in libtiff</A> 374f5e0202SAndrey Kiselev<LI><A HREF="#tools">Changes in the tools</A> 384f5e0202SAndrey Kiselev<LI><A HREF="#contrib">Changes in the contrib area</A> 394f5e0202SAndrey Kiselev<LI><A HREF="#lzwkit">Changes in the LZW compression kit</A> 404f5e0202SAndrey Kiselev</UL> 414f5e0202SAndrey Kiselev<p> 424f5e0202SAndrey Kiselev<P><HR WIDTH=65% ALIGN=left> 434f5e0202SAndrey Kiselev 444f5e0202SAndrey Kiselev<!---------------------------------------------------------------------------> 454f5e0202SAndrey Kiselev 464f5e0202SAndrey Kiselev<A NAME="highlights"><B><FONT SIZE=+3>M</FONT>AJOR CHANGES:</B></A> 474f5e0202SAndrey Kiselev 484f5e0202SAndrey Kiselev<ul> 494f5e0202SAndrey Kiselev <li> Significant changes in software configuration: we are switched 504f5e0202SAndrey Kiselev to GNU autotools now. 51e758fc84SAndrey Kiselev 52e758fc84SAndrey Kiselev <li> tiffset: tiffset now can set any libtiff supported tags. Tags 53e758fc84SAndrey Kiselev can be supplied by the mnemonic name or number. 544f5e0202SAndrey Kiselev</ul> 554f5e0202SAndrey Kiselev 564f5e0202SAndrey Kiselev 574f5e0202SAndrey Kiselev<P><HR WIDTH=65% ALIGN=left> 584f5e0202SAndrey Kiselev<!---------------------------------------------------------------------------> 594f5e0202SAndrey Kiselev 604f5e0202SAndrey Kiselev<A NAME="configure"><B><FONT SIZE=+3>C</FONT>HANGES IN THE SOFTWARE CONFIGURATION:</B></A> 614f5e0202SAndrey Kiselev 624f5e0202SAndrey Kiselev<UL> 634f5e0202SAndrey Kiselev <li> Get rid of the old configuration system and switch to 644f5e0202SAndrey Kiselev GNU autotools. 654f5e0202SAndrey Kiselev</UL> 664f5e0202SAndrey Kiselev 674f5e0202SAndrey Kiselev<P><HR WIDTH=65% ALIGN=left> 684f5e0202SAndrey Kiselev 694f5e0202SAndrey Kiselev<!---------------------------------------------------------------------------> 704f5e0202SAndrey Kiselev 714f5e0202SAndrey Kiselev<A NAME="libtiff"><B><FONT SIZE=+3>C</FONT>HANGES IN LIBTIFF:</B></A> 724f5e0202SAndrey Kiselev 734f5e0202SAndrey Kiselev<UL> 744f5e0202SAndrey Kiselev <li> libtiff/tif_ojpeg.c: Fixed problem with duplicated SOI and SOF 754f5e0202SAndrey Kiselev markers as per bug 764f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=581" 774f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=581</a>. 784f5e0202SAndrey Kiselev 794f5e0202SAndrey Kiselev <li> libtiff/{tif_open.c, tiffio.h}: New function added: 804f5e0202SAndrey Kiselev TIFFIsBigEndian(). Function returns nonzero if given was file written 814f5e0202SAndrey Kiselev in big-endian order. 824f5e0202SAndrey Kiselev 834f5e0202SAndrey Kiselev <li> libtiff/tif_print.c: added (untested) support for printing 844f5e0202SAndrey Kiselev SSHORT, SLONG and SRATIONAL fields. 854f5e0202SAndrey Kiselev 864f5e0202SAndrey Kiselev <li> libtiff/tif_fax3.c: Avoid reading CCITT compression options 874f5e0202SAndrey Kiselev if compression type mismatches. See 884f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=565"> 894f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=565</a>. 904f5e0202SAndrey Kiselev 914f5e0202SAndrey Kiselev <li> libtiff/tif_strip.c: Never return 0 from the TIFFNumberOfStrips(). 924f5e0202SAndrey Kiselev 934f5e0202SAndrey Kiselev <li> libtiff/tif_dirread.c: Workaround for broken TIFF writers which 944f5e0202SAndrey Kiselev store single SampleFormat value for multisampled images. See 954f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=562"> 964f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=562</a>. 974f5e0202SAndrey Kiselev 984f5e0202SAndrey Kiselev <li> libtiff/tif_write.c: Allow in-place updating of the compressed 994f5e0202SAndrey Kiselev images (don't work properly with all codecs). For details see GDAL bug 1004f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=534"> 1014f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=534</a>. 1024f5e0202SAndrey Kiselev 1034f5e0202SAndrey Kiselev <li> libtiff/tif_jpeg.c: Workaround for wrong sampling factors used 1044f5e0202SAndrey Kiselev in the Intergarph JPEG compressed TIFF images as per bug: 1054f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=532"> 1064f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=532</a>. 1074f5e0202SAndrey Kiselev 1084f5e0202SAndrey Kiselev <li> libtiff/tif_open.c: Use dummy mmap/munmap functions in 1094f5e0202SAndrey Kiselev TIFFClientOpen() when the appropriate client functions was not 1104f5e0202SAndrey Kiselev supplied by user. 1114f5e0202SAndrey Kiselev 1124f5e0202SAndrey Kiselev <li> libtiff/tif_dirread.c: Fixed problem with handling TIFF_UNDEFINED 1134f5e0202SAndrey Kiselev tag type in TIFFFetchNormalTag() as per bug 1144f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=508" 1154f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=508</a>. 1164f5e0202SAndrey Kiselev 1174f5e0202SAndrey Kiselev <li> libtiff/tif_codec.c: Fixed typo in TIFFInitPackBits name as per: 1184f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=494"> 1194f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=494</a>. 1204f5e0202SAndrey Kiselev 1214f5e0202SAndrey Kiselev <li> libtiff/tif_fax3.c: Fixed problem, introdiced in 3.6.1 release, 1224f5e0202SAndrey Kiselev with the CCITT encoding modes as per bug 1234f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=483"> 1244f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=483</a>. 1254f5e0202SAndrey Kiselev We need more work on fax codec to support update mode. 1264f5e0202SAndrey Kiselev 1274f5e0202SAndrey Kiselev <li> libtiff/tiff.h: Fixed tag definitions for TIFFTAG_YCLIPPATHUNITS 1284f5e0202SAndrey Kiselev and TIFFTAG_INDEXED as per bug 1294f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=475"> 1304f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=475</a>. 1314f5e0202SAndrey Kiselev 1324f5e0202SAndrey Kiselev <li> libtiff/{tif_win32.c, tif_unix.c}: Check whether the pointer is 1334f5e0202SAndrey Kiselev NULL before proceeding further as per bug 1344f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=474"> 1354f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=474</a>. 1364f5e0202SAndrey Kiselev Check results, returned by the TIFFFdOpen() before returning and close 1374f5e0202SAndrey Kiselev file if TIFFFdOpen() failed as per bug 1384f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=468"> 1394f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=468</a>. 1404f5e0202SAndrey Kiselev 1414f5e0202SAndrey Kiselev <li> libtiff/{libtiff.def, tif_close.c, tiffio.h, tif_open.c}: 1424f5e0202SAndrey Kiselev Separate TIFFCleanup() from the TIFFClose() in order to fix the bug 1434f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=468"> 1444f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=468</a>. 1454f5e0202SAndrey Kiselev 1464f5e0202SAndrey Kiselev <li> libtiff/tif_dirwrite.c: Fixed handling of writable ASCII tags 1474f5e0202SAndrey Kiselev that are field_passcount=TRUE properly. Arguably anonymous custom 1484f5e0202SAndrey Kiselev tags should be declared as passcount=FALSE, but I don't want to change 1494f5e0202SAndrey Kiselev that without a careful review. 1504f5e0202SAndrey Kiselev 1514f5e0202SAndrey Kiselev <li> libtiff/tif_write.c: Fixed reporting size of the buffer in case 1524f5e0202SAndrey Kiselev of stripped image in TIFFWriteBufferSetup(). As per bug 1534f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=460"> 1544f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=460</a>. 1554f5e0202SAndrey Kiselev 1564f5e0202SAndrey Kiselev <li> libtiff/tif_dir.c: Incomplete cleanup in TIFFFreeDirectory(), 1574f5e0202SAndrey Kiselev patch from Gerben Koopmans. 1584f5e0202SAndrey Kiselev 1594f5e0202SAndrey Kiselev <li> libtiff/tif_dirread.c: Check field_passcount value before setting 1604f5e0202SAndrey Kiselev the value of undefined type, patch from Gerben Koopmans. 1614f5e0202SAndrey Kiselev 1624f5e0202SAndrey Kiselev <li> libtiff/{tiff.h, tif_fax3.c}:Fixes for AMD 64 platform as 1634f5e0202SAndrey Kiselev suggested by Jeremy C. Reed. 1644f5e0202SAndrey Kiselev 1654f5e0202SAndrey Kiselev <li> libtiff/tif_win32.c: Fixed problem with _TIFFrealloc() when 1664f5e0202SAndrey Kiselev the NULL pointer passed. Patch supplied by Larry Grill. 1674f5e0202SAndrey Kiselev 1684f5e0202SAndrey Kiselev</UL> 1694f5e0202SAndrey Kiselev 1704f5e0202SAndrey Kiselev<P><HR WIDTH=65% ALIGN=left> 1714f5e0202SAndrey Kiselev 1724f5e0202SAndrey Kiselev<!--------------------------------------------------------------------------> 1734f5e0202SAndrey Kiselev 1744f5e0202SAndrey Kiselev<A NAME="tools"><B><FONT SIZE=+3>C</FONT>HANGES IN THE TOOLS:</B></A> 1754f5e0202SAndrey Kiselev 1764f5e0202SAndrey Kiselev<UL> 177249698e1SAndrey Kiselev <li> tiffset: tiffset now can set any libtiff supported tags. Tags 178249698e1SAndrey Kiselev can be supplied by the mnemonic name or number. 179249698e1SAndrey Kiselev 1804f5e0202SAndrey Kiselev <li> ycbcr.c: fixed main() declaration as per: 1814f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=513"> 1824f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=513</a>. 1834f5e0202SAndrey Kiselev 1844f5e0202SAndrey Kiselev <li> <a href=./man/tiffsplit.1.html>tiffsplit</a>: Don't forget 1854f5e0202SAndrey Kiselev to copy Photometric Interpretation tag. 1864f5e0202SAndrey Kiselev 1874f5e0202SAndrey Kiselev <li> <a href=./man/tiffsplit.1.html>tiffsplit</a>: Fixed problem with 1884f5e0202SAndrey Kiselev unproperly written multibyte files. Now output files will be written 1894f5e0202SAndrey Kiselev using the same byte order flag as in the input image. See 1904f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=574" 1914f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=574</a>. 1924f5e0202SAndrey Kiselev 1934f5e0202SAndrey Kiselev <li> <a href=./man/tiffsplit.1.html>tiffsplit</a>: Copy JPEGTables 1944f5e0202SAndrey Kiselev tag contents for JPEG compressed images. Reported by Artem Mirolubov. 1954f5e0202SAndrey Kiselev 1964f5e0202SAndrey Kiselev <li> <a href=./man/tiffcp.1.html>tiffcp</a>: Close output file 1974f5e0202SAndrey Kiselev on normal exit. 1984f5e0202SAndrey Kiselev 1994f5e0202SAndrey Kiselev <li> <a href=./man/tiffcp.1.html>tiffcp</a>: Don't emit warnings 2004f5e0202SAndrey Kiselev when Orientation tag does not present in the input image. 2014f5e0202SAndrey Kiselev 2024f5e0202SAndrey Kiselev <li> <a href=./man/tiffcp.1.html>tiffcp</a>: Properly set 2034f5e0202SAndrey Kiselev Photometric Interpretation in case of JPEG compression of grayscale 2044f5e0202SAndrey Kiselev images. 2054f5e0202SAndrey Kiselev 2064f5e0202SAndrey Kiselev <li> <a href=./man/tiffcp.1.html>tiffcp</a>: Fixed problem with wrong 2074f5e0202SAndrey Kiselev interpretation of the InkNames tag as per bug 2084f5e0202SAndrey Kiselev <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=466"> 2094f5e0202SAndrey Kiselev http://bugzilla.remotesensing.org/show_bug.cgi?id=466</a>. 2104f5e0202SAndrey Kiselev Memory leak fixed. 2114f5e0202SAndrey Kiselev 2124f5e0202SAndrey Kiselev <li> <a href=./man/tiffcp.1.html>tiffcp</a>: Fixed problem with 2134f5e0202SAndrey Kiselev wrong Photometric setting for non-RGB images. 2144f5e0202SAndrey Kiselev 2154f5e0202SAndrey Kiselev</UL> 2164f5e0202SAndrey Kiselev 2174f5e0202SAndrey Kiselev<P><HR WIDTH=65% ALIGN=left> 2184f5e0202SAndrey Kiselev 2194f5e0202SAndrey Kiselev<!---------------------------------------------------------------------------> 2204f5e0202SAndrey Kiselev 2214f5e0202SAndrey Kiselev<A NAME="contrib"><B><FONT SIZE=+3>C</FONT>HANGES IN THE CONTRIB AREA:</B></A> 2224f5e0202SAndrey Kiselev 2234f5e0202SAndrey Kiselev<UL> 2244f5e0202SAndrey Kiselev 2254f5e0202SAndrey Kiselev <li> Outdated stuff removed. 2264f5e0202SAndrey Kiselev 2274f5e0202SAndrey Kiselev <li> Almost all programs are sinchronized with the current libtiff 2284f5e0202SAndrey Kiselev and should compile without problems. 2294f5e0202SAndrey Kiselev 2304f5e0202SAndrey Kiselev</UL> 2314f5e0202SAndrey Kiselev 2324f5e0202SAndrey Kiselev<!---------------------------------------------------------------------------> 2334f5e0202SAndrey Kiselev 2344f5e0202SAndrey Kiselev<A NAME="lzwkit"><B><FONT SIZE=+3>C</FONT>HANGES IN THE LZW COMPRESSION 2354f5e0202SAndrey KiselevKIT:</B></A> 2364f5e0202SAndrey Kiselev<UL> 2374f5e0202SAndrey Kiselev 2384f5e0202SAndrey Kiselev<li> No changes. 2394f5e0202SAndrey Kiselev 2404f5e0202SAndrey Kiselev</UL> 2414f5e0202SAndrey Kiselev 2424f5e0202SAndrey Kiselev<A HREF="index.html"><IMG SRC="images/back.gif"></A> TIFF home page.<BR> 2434f5e0202SAndrey Kiselev 2444f5e0202SAndrey Kiselev<HR> 2454f5e0202SAndrey Kiselev 246*d4dd6cccSBob FriesenhahnLast updated $Date: 2016-09-25 20:05:45 $. 2474f5e0202SAndrey Kiselev 2484f5e0202SAndrey Kiselev</BODY> 2494f5e0202SAndrey Kiselev</HTML> 250