Changes in TIFF v4.4.0¶
Current Version |
v4.4.0 (tag %sv4.4.0) |
Previous Version |
|
Master Download Site |
|
Master HTTP Site #1 |
|
Master HTTP Site #2 |
|
Master HTTP Site #3 |
This document provides a summary of significant changes made to the
software between the previous and current versions (see
above). A fully-detailed change summary is provided by the ChangeLog file
included in the release package and by the Git commit history:
Major changes¶
None
Software configuration changes¶
Handle absolute paths in pkg-config file (issue #%s333)
Correct fix for the pkgconf file relative paths.
cmake: allow running the tests with a read-only source directory.
cmake: Fix
STRIPCHOP_DEFAULTvalue in CMake builds.build: Fix static library imports in mingw related to LERC
Fix version in
libtiff-4.pc.in, and CMake build: Add requirements to pc filecmake: Fix build with CMake 3.10.
cmake: Export tiff targets.
Make
LERC_SUPPORTconditional onZLIB_SUPPORT
Library changes¶
New/improved functionalities:
TIFFIsBigTiff()function added.Functions
TIFFFieldSetGetSize()andTIFFieldSetGetCountSize()added.LZWDecode(): major speed improvements (~30% faster)Predictor 2 (horizontal differenciation): support 64-bit
Support libjpeg 9d
Bug fixes:
Remove incorrect assert (issue #%s329)
avoid hang in
TIFFRewriteDirectory()if a classic file > 4 GB is attempted to be createdtif_jbig.c: fix crash when reading a file with multiple IFD in memory-mapped mode and when bit reversal is needed (fixes issue #%s385)TIFFFetchNormalTag(): avoid callingmemcpy()with a null source pointer and size of zero (fixes issue #%s383)TIFFWriteDirectoryTagData(): turn assertion on data length into a runtime checkTIFFFetchStripThing(): avoid callingmemcpy()with a null source pointer and size of zero (fixes issue #%s362)TIFFReadDirectory(): avoid callingmemcpy()with a null source pointer and size of zero (fixes issue #%s362)TIFFYCbCrToRGBInit(): avoid Integer-overflowTIFFGetField(TIFFTAG_STRIPBYTECOUNTS/TIFFTAG_STRIPOFFSETS): return error if returned pointer is NULL (fixes issue #%s342)OJPEG: avoid assertion when using
TIFFReadScanline()(fixes issue #%s337)TIFFReadDirectory(): fix OJPEG hack (fixes issue #%s319)LZW codec: fix support for strips/tiles > 2 GB on Windows
TIFFAppendToStrip(): fix rewrite-in-place logic (fixes issue #%s309)Fix
TIFFRewriteDirectory()discarding directories.TIFFReadCustomDirectory(): avoid crash when reading SubjectDistance tag on a non EXIF directory (issue #%s316)Fix Segmentation fault printing GPS directory if
Altitudetag is presenttif_jpeg.c: do not emit progressive scans with mozjpeg. (issue #%s266)_TIFFRewriteField(): fix when writing a IFD with a single tile that is a sparse one, on big endian hostsFix all remaining uses of legacy Deflate compression id and warn on use.
Tools changes¶
Bug fixes:
tiffcrop: Fix issue issue #%s330 and some more from 320 to 349.
tiffcrop: fix issue issue #%s395: generation of strange section images.
tiffcrop: fix issue issue #%s380 and issue #%s382 heap buffer overflow in extractImageSection
tiffcrop: fix FPE (issue #%s393)
tiffcrop: buffsize check formula in
loadImage()amended (fixes issue #%s273, issue #%s275)tiffcrop.c: Fix issue issue #%s352 heap-buffer-overflow by correcting
uint32_tunderflow.tiff2pdf: handle 8-bit palette colormap.
tiffcp: avoid buffer overflow in “mode” string (fixes issue #%s400)
tiffcp: Fix incomprehensible setting of orientation tag (fixes issue #%s29)
tiffcp: do not try to fetch compressor-specific tags when not appropriate (fixes issue #%s396)
tiffcp: fix heap buffer overflow (issue #%s278)
tiff2ps: In
limitMalloc()check for negative size (fixes issue #%s284)tiffinfo: add a
-Mswitch to define the maximum heap allocation, and default it to 256 MiB (fixes issue #%s287, issue #%s290)tiffinfo: limit more memory allocations using
-Mswitch (fixes issue #%s288)tiffset: fix global-buffer-overflow for ASCII tags where count is required (fixes issue #%s355)
raw2tiff: check that band number if not zero to avoid floating point exception(fixes issue #%s338)
tiffinfo/tiffdump: improve output for GDAL tags.
Contributed software changes¶
None