<HTML>
<HEAD>
<TITLE>
Changes in TIFF v3.7.3
</TITLE>
</HEAD>
<BODY BGCOLOR=white>
<FONT FACE="Helvetica, Arial, Sans">
<FONT FACE="Helvetica, Arial, Sans">
<BASEFONT SIZE=4>
<B><FONT SIZE=+3>T</FONT>IFF <FONT SIZE=+2>C</FONT>HANGE <FONT SIZE=+2>I</FONT>NFORMATION</B>
<BASEFONT SIZE=3>
<UL>
<HR SIZE=4 WIDTH=65% ALIGN=left>
<B>Current Version</B>: v3.7.3<BR>
<B>Previous Version</B>: <A HREF=v3.7.2.html>v3.7.2</a><BR>
<B>Master FTP Site</B>: <A HREF="ftp://ftp.remotesensing.org/pub/libtiff">
ftp.remotesensing.org</a>, directory pub/libtiff</A><BR>
<B>Master HTTP Site</B>: <A HREF="http://www.remotesensing.org/libtiff">
http://www.remotesensing.org/libtiff</a>
<HR SIZE=4 WIDTH=65% ALIGN=left>
</UL>
<P>
This document describes the changes made to the software between the
<I>previous</I> and <I>current</I> versions (see above).
If you don't find something listed here, then it was not done in this
timeframe, or it was not considered important enough to be mentioned.
The following information is located here:
<UL>
<LI><A HREF="#hightlights">Major Changes</A>
<LI><A HREF="#configure">Changes in the software configuration</A>
<LI><A HREF="#libtiff">Changes in libtiff</A>
<LI><A HREF="#tools">Changes in the tools</A>
<LI><A HREF="#contrib">Changes in the contrib area</A>
</UL>
<p>
<P><HR WIDTH=65% ALIGN=left>
<!--------------------------------------------------------------------------->
<A NAME="highlights"><B><FONT SIZE=+3>M</FONT>AJOR CHANGES:</B></A>
<UL>
<li> Replace runtime endianess check with the compile time one.
<li> Added support for the new predictor type (floating point
predictor), defined at the TIFF Technical Note 3.
<li> Added Support for custom tags, passed by value.
Added support for all DNG tags.
</UL>
<P><HR WIDTH=65% ALIGN=left>
<!--------------------------------------------------------------------------->
<A NAME="configure"><B><FONT SIZE=+3>C</FONT>HANGES IN THE SOFTWARE CONFIGURATION:</B></A>
<UL>
<li> Do not use empty -R option when linking with --enable-rpath.
<li> Added workaround for OpenBSD/MirOS soname problem as per bug
<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=838">
http://bugzilla.remotesensing.org/show_bug.cgi?id=838</a>
<li> Fixed parallel compilation of the libtiff and
libtiffxx libraries as per bug
<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=826">
http://bugzilla.remotesensing.org/show_bug.cgi?id=826</a>
<li> configure.ac, libtiff/Makefile.am: Use libtool machinery to pass
rpath option.
<li> make.opt: Build with Win32 CRT library by default.
</UL>
<P><HR WIDTH=65% ALIGN=left>
<!--------------------------------------------------------------------------->
<A NAME="libtiff"><B><FONT SIZE=+3>C</FONT>HANGES IN LIBTIFF:</B></A>
<UL>
<li> tiffiop.h, tif_open.c: Added open option 'h' to avoid reading
the first IFD when needed. As per bug
<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=875">
http://bugzilla.remotesensing.org/show_bug.cgi?id=875</a>
<li> tiff.h: Use correct int size on Sparc 64bit/Sun compiler
platform. As per bug
<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=855">
http://bugzilla.remotesensing.org/show_bug.cgi?id=855</a>
<li> tif_dirinfo.c: Added support for ClipPath, XClipPathUnits
and YClipPathUnits tags.
<li> tif_dirinfo.c, tif_dir.h, tif_dir.c, tif_print.c: Make
DocumentName, Artist, HostComputer, ImageDescription, Make, Model,
Copyright, DateTime, PageName, TextureFormat, TextureWrapModes and
TargetPrinter tags custom.
<li> tif_jpeg.c: Cleanup the codec state depending on TIFF_CODERSETUP
flag (to fix memory leaks).
<li> tif_dirwrite.c: Use tdir_count when calling
TIFFCvtNativeToIEEEDouble() in the TIFFWriteDoubleArray() function as
per bug <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=845">
http://bugzilla.remotesensing.org/show_bug.cgi?id=845</a>
<li> tif_dirinfo.c, tif_print.c: TIFFFetchByteArray() returns
uint16 array when fetching the BYTE and SBYTE fields, so we should
consider result as pointer to uint16 array and not as array of chars.
As per bug
<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=831">
http://bugzilla.remotesensing.org/show_bug.cgi?id=831</a>
<li> tif_dir.c: More efficient custom tags retrieval as per bug
<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=830">
http://bugzilla.remotesensing.org/show_bug.cgi?id=830</a>
<li> tif_win32.c: Use FILE_SHARE_READ | FILE_SHARE_WRITE share
mode in CreateFile() call as per bug
<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=829">
http://bugzilla.remotesensing.org/show_bug.cgi?id=829</a>
<li> tif_jpeg.c: Substantial fix for addtiffo problems with
JPEG encoded TIFF files. Pre-allocate lots of space for jpegtables
in directory.
<li> tif_dirread.c: Changed the code that computes
stripbytecount[0] if it appears bogus to ignore if stripoffset[0] is
zero. This is a common case with GDAL indicating a "null" tile/strip.
<li> tif_jpeg.c: added LIB_JPEG_MK1 support in JPEGDecodeRaw().
<li> tif_dirread.c: Ensure that broken files with too many
values in PerSampleShorts, TIFFFetchPerSampleLongs and
TIFFFetchPerSampleAnys work ok instead of crashing.
<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=843">
http://bugzilla.remotesensing.org/show_bug.cgi?id=843</a>
<li> tif_predict.h, tif_predict.c: Added ability to decode and encode
floating point predictor, as per TIFF Technical Note 3.
See http://chriscox.org/TIFF_TN3_Draft2.pdf for details.
<li> tiffio.h, tiffiop.h, tif_dir.c, tif_read.c, tif_swab.c:
Added _TIFFSwab24BitData() and TIFFSwabArrayOfLong() functions used to
swap 24-bit floating point values.
<li> tiff.h: Added predictor constants.
<li> tiffiop.h, tif_dir.c: Use uint32 type for appropriate values
in _TIFFVSetField() function. Inspired by the bug
<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=816">
http://bugzilla.remotesensing.org/show_bug.cgi?id=816</a>
<li> tif_open.c: Do not read header in case the output file should
be truncated (Ron).
<li> tif_dirinfo.c, tif_config.h.vc: Use lfind() instead of bsearch()
in _TIFFFindFieldInfoByName() function (Ron).
<li> tif_dir.c, tif_print.c: Properly handle all data types in custom
tags.
<li> dirinfo.c: Added DNG tags.
<li> tiff.h: Added missed DNG tag (LensInfo); added DNG 1.1.0.0 tags.
<li> tif_dir.c, tif_print.c: Added Support for custom tags, passed
by value.
<li> tiff.h, tif_dirinfo.c, tiffiop.h: Added EXIF related tags.
</UL>
<P><HR WIDTH=65% ALIGN=left>
<!-------------------------------------------------------------------------->
<A NAME="tools"><B><FONT SIZE=+3>C</FONT>HANGES IN THE TOOLS:</B></A>
<UL>
<li> tiff2pdf.c: Print two characters per loop in the
t2p_write_pdf_trailer(). As per bug
<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=594">
http://bugzilla.remotesensing.org/show_bug.cgi?id=594</a>
<li> tiffgt.c: Use MacOS X OpenGL framework when appropriate. As
per bug <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=844">
http://bugzilla.remotesensing.org/show_bug.cgi?id=844</a>
<li> ppm2tiff.c: Fixed format string when read PPM file header with
the fscanf() function. As per bug
<a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=861">
http://bugzilla.remotesensing.org/show_bug.cgi?id=861</a>
<li> tiffsplit.c: Check for JPEGTables tag presence before copying.
<li> tiff2pdfr.c: Calculate the tile width properly; added new
option '-b' to use interpolation in output PDF files (Bruno Ledoux).
<li> tiffdither.c: Copy the PhotometricInterpretation tag from the
input file.
<li> tif2pdf.c: Fixed problem with alpha channel handling as per
bug <a href="http://bugzilla.remotesensing.org/show_bug.cgi?id=794">
http://bugzilla.remotesensing.org/show_bug.cgi?id=794</a>.
</UL>
<P><HR WIDTH=65% ALIGN=left>
<!--------------------------------------------------------------------------->
<A NAME="contrib"><B><FONT SIZE=+3>C</FONT>HANGES IN THE CONTRIB AREA:</B></A>
<UL>
<li> addtiffo/{tif_overview.c, tif_ovrcache.c, tif_ovrcache.h}:
Make overviews working for contiguous images.
</UL>
Last updated $Date: 2006/01/04 22:04:46 $.
</BODY>
</HTML>