Changes in TIFF v3.7.1

TIFF CHANGE INFORMATION

Current Version: v3.7.1
Previous Version: v3.7.0
Master FTP Site: ftp.remotesensing.org, directory pub/libtiff
Master HTTP Site: http://www.remotesensing.org/libtiff

This document describes the changes made to the software between the previous and current 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:

- Major Changes
- Changes in the software configuration
- Changes in libtiff
- Changes in the tools
- Changes in the contrib area

MAJOR CHANGES:

- This is mostly bugfix release. Most important fix is the one related to wrong custom tag read/write code.

CHANGES IN THE SOFTWARE CONFIGURATION:

- autogen.sh: aclocal and autoheader should be executed after libtoolize. Also add '-I .' to aclocal invocation to check current directory for macros.
- nmake.opt: Link with the user32.lib in windowed mode. As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=697
- nmake.opt, makefile.vc: make it easier to rename the libtiff DLL.
- configure, configure.ac: Added --enable-rpath option to embed linker paths into library binary.

CHANGES IN LIBTIFF:

- tiff.h: Revert back libtiff data type definitions as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=687
- tif_dirread.c: Do not forget about TIFF_VARIABLE2 when checking for tag count in TIFFReadDirectory() function. As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=713
- tif_getimage.c: Support for multiple-alpha-channelled RGB-images as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=718
- tif_getimage.c: #define A1 bracketing for clean build on SunPro compiler.
- tif_dirwrite.c: Always write TIFFTAG_SUBIFD using LONG type as per bugs http://bugzilla.remotesensing.org/show_bug.cgi?id=703 and http://bugzilla.remotesensing.org/show_bug.cgi?id=704.
- tif_win32.c: Use char* strings instead of TCHAR in windowed mode as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=697
- tif_dir.c, tif_dirread.c: Remove TIFFReassignTagToIgnore() call from the TIFFReadDirectory() function. TIFFReassignTagToIgnore must be removed in the future, as it was never used properly. As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=692
- tif_jpeg.c: Added a work-around in order to allow compilation with the heavily modified version of libjpeg delivered with Cygwin.
- tif_dir.c: Properly handle tags, which have the uint32 counts. As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=693
- tif_unix.c: Make UNIX module compilable (and usable) on Windows.
- tiff.h: Added Adobe DNG tags.
- tif_aux.c: Set the appropriate ReferenceBlackWhite array for YCbCr image which lacks that tag (noted by Hans Petter Selasky).
- tif_color.c: Division by zero fixed (Hans Petter Selasky).
- tif_stream.cxx, tiffio.h: Added C++ stream interface contributed by Edward Lam (see http://bugzilla.remotesensing.org/show_bug.cgi?id=654 for details). Those who want to use C++ streams should #include .
- tif_open.c: Removed close() in TIFFClientOpen() if file is bad. This is the callers responsibility. http://bugzilla.remotesensing.org/show_bug.cgi?id=651
- tiffio.h, tif_win32.c, libtiff.def}: Added TIFFOpenW() function to work with the double byte strings (used to represent filenames in some locales). As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=625
- tif_dirread.c: Fixed problem when fetching BitsPerSample and Compression tags of type LONG from broken TIFFS as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=662
- tif_dirinfo.c: Fixed definition for TIFFTAG_RICHTIFFIPTC, the writecount should have uint32 type. As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=662
- tif_write.c: Fixed wrong if() statement in TIFFAppendToStrip() function as per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=660
- tif_dirinfo.c: Change definition for TIFFTAG_EXTRASAMPLES field. The caller should supply a count when setting this field. As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=648.
- tif_jpeg.c, tif_ojpeg.c: TIFFTAG_JPEGTABLES should have uint32 count. Use this type everywhere.
- tif_next.c: avoid use of u_long and u_char types.
- tif_fax3.c: Fixed case with the wrong decode routines choosing when the incorrect Group4Options tag set. As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=323
- tif_dirwrite.c: Fixed problem with passing count variable of wrong type when writing the TIFF_BYTE/TIFF_SBYTE tags in TIFFWriteNormalTag().
- tif_compress.c: Zero division problem fixed (Vladimir Nadvornik, Dmitry V. Levin).

CHANGES IN THE TOOLS:

- fax2ps.c: Be able to extract the first page (#0). As per bug http://bugzilla.remotesensing.org/show_bug.cgi?id=690
- tiff2ps.c: Fixed wrong variable data type when read Position tags (Tristan Hill).
- tiff2ps.c: Fixed wrong variable data type when read Resolution tags (Peter Fales).
- tiffset.c: Check the malloc return value (Dmitry V. Levin).

CHANGES IN THE CONTRIB AREA:

- No changes.

Last updated $Date$.