mirror of
https://gitlab.com/libtiff/libtiff.git
synced 2026-01-18 21:51:18 +01:00
Prepare for 4.7.1 release
This commit is contained in:
@@ -1 +1 @@
|
|||||||
20240911
|
20250911
|
||||||
|
|||||||
@@ -25,7 +25,7 @@ dnl OF THIS SOFTWARE.
|
|||||||
dnl Process this file with autoconf to produce a configure script.
|
dnl Process this file with autoconf to produce a configure script.
|
||||||
|
|
||||||
AC_PREREQ([2.69])
|
AC_PREREQ([2.69])
|
||||||
AC_INIT([LibTIFF Software],[4.7.0],[tiff@lists.osgeo.org],[tiff])
|
AC_INIT([LibTIFF Software],[4.7.1],[tiff@lists.osgeo.org],[tiff])
|
||||||
AC_CONFIG_AUX_DIR(config)
|
AC_CONFIG_AUX_DIR(config)
|
||||||
AC_CONFIG_MACRO_DIR(m4)
|
AC_CONFIG_MACRO_DIR(m4)
|
||||||
AC_LANG(C)
|
AC_LANG(C)
|
||||||
@@ -41,7 +41,7 @@ dnl Versioning.
|
|||||||
dnl Don't fill the ALPHA_VERSION field, if not applicable.
|
dnl Don't fill the ALPHA_VERSION field, if not applicable.
|
||||||
LIBTIFF_MAJOR_VERSION=4
|
LIBTIFF_MAJOR_VERSION=4
|
||||||
LIBTIFF_MINOR_VERSION=7
|
LIBTIFF_MINOR_VERSION=7
|
||||||
LIBTIFF_MICRO_VERSION=0
|
LIBTIFF_MICRO_VERSION=1
|
||||||
LIBTIFF_ALPHA_VERSION=
|
LIBTIFF_ALPHA_VERSION=
|
||||||
LIBTIFF_VERSION=$LIBTIFF_MAJOR_VERSION.$LIBTIFF_MINOR_VERSION.$LIBTIFF_MICRO_VERSION$LIBTIFF_ALPHA_VERSION
|
LIBTIFF_VERSION=$LIBTIFF_MAJOR_VERSION.$LIBTIFF_MINOR_VERSION.$LIBTIFF_MICRO_VERSION$LIBTIFF_ALPHA_VERSION
|
||||||
dnl This (LIBTIFF_RELEASE_DATE) is used to set the #define TIFFLIB_VERSION in tiffvers.h.
|
dnl This (LIBTIFF_RELEASE_DATE) is used to set the #define TIFFLIB_VERSION in tiffvers.h.
|
||||||
@@ -77,9 +77,9 @@ dnl 5. If any interfaces have been added since the last public release, then
|
|||||||
dnl increment age.
|
dnl increment age.
|
||||||
dnl 6. If any interfaces have been removed since the last public release,
|
dnl 6. If any interfaces have been removed since the last public release,
|
||||||
dnl then set age to 0.
|
dnl then set age to 0.
|
||||||
LIBTIFF_CURRENT=7
|
LIBTIFF_CURRENT=8
|
||||||
LIBTIFF_REVISION=0
|
LIBTIFF_REVISION=0
|
||||||
LIBTIFF_AGE=1
|
LIBTIFF_AGE=2
|
||||||
LIBTIFF_VERSION_INFO=$LIBTIFF_CURRENT:$LIBTIFF_REVISION:$LIBTIFF_AGE
|
LIBTIFF_VERSION_INFO=$LIBTIFF_CURRENT:$LIBTIFF_REVISION:$LIBTIFF_AGE
|
||||||
|
|
||||||
# This is a special hack for OpenBSD and MirOS systems. The dynamic linker
|
# This is a special hack for OpenBSD and MirOS systems. The dynamic linker
|
||||||
|
|||||||
@@ -124,6 +124,7 @@ rst_sources = \
|
|||||||
releases/v4.5.1.rst \
|
releases/v4.5.1.rst \
|
||||||
releases/v4.6.0.rst \
|
releases/v4.6.0.rst \
|
||||||
releases/v4.7.0.rst \
|
releases/v4.7.0.rst \
|
||||||
|
releases/v4.7.1.rst \
|
||||||
rfcs/index.rst \
|
rfcs/index.rst \
|
||||||
rfcs/rfc1_psc.rst \
|
rfcs/rfc1_psc.rst \
|
||||||
rfcs/rfc2_restoring_needed_tools.rst \
|
rfcs/rfc2_restoring_needed_tools.rst \
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ LibTIFF - TIFF Library and Utilities
|
|||||||
===================== =====================================
|
===================== =====================================
|
||||||
Home Page #1 http://www.simplesystems.org/libtiff/
|
Home Page #1 http://www.simplesystems.org/libtiff/
|
||||||
Home Page #2 https://libtiff.gitlab.io/libtiff/
|
Home Page #2 https://libtiff.gitlab.io/libtiff/
|
||||||
Latest Stable Release v4.7.0
|
Latest Stable Release v4.7.1
|
||||||
Primary Download Site `download.osgeo.org <https://download.osgeo.org/libtiff/>`_
|
Primary Download Site `download.osgeo.org <https://download.osgeo.org/libtiff/>`_
|
||||||
Mailing List `tiff@lists.osgeo.org <tiff@lists.osgeo.org>`_
|
Mailing List `tiff@lists.osgeo.org <tiff@lists.osgeo.org>`_
|
||||||
List subscription http://lists.osgeo.org/mailman/listinfo/tiff/
|
List subscription http://lists.osgeo.org/mailman/listinfo/tiff/
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ LibTIFF releases.
|
|||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
:titlesonly:
|
:titlesonly:
|
||||||
|
|
||||||
|
v4.7.1
|
||||||
v4.7.0
|
v4.7.0
|
||||||
v4.6.0
|
v4.6.0
|
||||||
v4.5.1
|
v4.5.1
|
||||||
|
|||||||
273
doc/releases/v4.7.1.rst
Normal file
273
doc/releases/v4.7.1.rst
Normal file
@@ -0,0 +1,273 @@
|
|||||||
|
Changes in TIFF v4.7.1
|
||||||
|
======================
|
||||||
|
|
||||||
|
.. table:: References
|
||||||
|
:widths: auto
|
||||||
|
|
||||||
|
====================== ==========================================
|
||||||
|
Current Version v4.7.1 (:tag:`v4.7.1`)
|
||||||
|
Previous Version :doc:`v4.7.0 <v4.7.0>`
|
||||||
|
Primary Download Site `<https://download.osgeo.org/libtiff/>`_
|
||||||
|
Home HTTP Site #1 `<http://www.simplesystems.org/libtiff/>`_
|
||||||
|
Home HTTP Site #2 `<https://libtiff.gitlab.io/libtiff/>`_
|
||||||
|
====================== ==========================================
|
||||||
|
|
||||||
|
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 :file:`ChangeLog` file
|
||||||
|
included in the release package and by the Git commit history.
|
||||||
|
|
||||||
|
Major changes
|
||||||
|
-------------
|
||||||
|
|
||||||
|
None
|
||||||
|
|
||||||
|
Software configuration changes
|
||||||
|
------------------------------
|
||||||
|
|
||||||
|
* Define HAVE_JPEGTURBO_DUAL_MODE_8_12 and LERC_STATIC in tif_config.h.
|
||||||
|
* CMake: define WORDS_BIGENDIAN via tif_config.h
|
||||||
|
* doc/CMakeLists.txt: remove useless cmake_minimum_required()
|
||||||
|
* CMake: fix build with LLVM/Clang 17 (fixes :issue:`651`)
|
||||||
|
* CMake: set CMP0074 new policy
|
||||||
|
* Set LINKER_LANGUAGE for C targets with C deps
|
||||||
|
* Export tiffxx cmake target (fixes :issue:`674`)
|
||||||
|
* autogen.sh: Enable verbose wget.
|
||||||
|
* configure.ac: Syntax updates for Autoconf 2.71
|
||||||
|
* autogen.sh: Re-implement based on autoreconf. Failure to update
|
||||||
|
config.guess/config.sub does not return error (fixes :issue:`672`)
|
||||||
|
* CMake: fix CMake 4.0 warning when minimum required version is < 3.10.
|
||||||
|
* CMake: Add build option tiff-static (fixes :issue:`709`)
|
||||||
|
|
||||||
|
Library changes
|
||||||
|
---------------
|
||||||
|
|
||||||
|
New/improved functionalities:
|
||||||
|
|
||||||
|
* Add TIFFOpenOptionsSetWarnAboutUnknownTags() for explicit control about
|
||||||
|
emitting warnings for unknown tags. No longer emit warnings about unknown
|
||||||
|
tags by default
|
||||||
|
|
||||||
|
* tif_predict.c: speed-up decompression in some cases.
|
||||||
|
|
||||||
|
API/ABI breaks:
|
||||||
|
|
||||||
|
* None
|
||||||
|
|
||||||
|
Bug fixes:
|
||||||
|
|
||||||
|
* tif_fax3: For fax group 3 data if no EOL is detected, reading is retried
|
||||||
|
without synchronisation for EOLs. (fixes :issue:`54`)
|
||||||
|
|
||||||
|
* Updating TIFFMergeFieldInfo() with read_count=write_count=0 for FIELD_IGNORE.
|
||||||
|
Updating TIFFMergeFieldInfo() with read_count=write_count=0 for FIELD_IGNORE.
|
||||||
|
Improving handling when field_name = NULL.
|
||||||
|
(fixes :issue:`532`)
|
||||||
|
|
||||||
|
* tiff.h: add COMPRESSION_JXL_DNG_1_7=52546 as used for JPEGXL compression in
|
||||||
|
the DNG 1.7 specification
|
||||||
|
|
||||||
|
* TIFFWriteDirectorySec: Increment string length for ASCII tags for codec tags
|
||||||
|
defined with FIELD_xxx bits, as it is done for FIELD_CUSTOM tags.
|
||||||
|
(fixes :issue:`648`)
|
||||||
|
|
||||||
|
* Do not error out on a tag whose tag count value is zero, just issue a warning.
|
||||||
|
Fix parsing a private tag 0x80a6 (fixes :issue:`647`)
|
||||||
|
|
||||||
|
* TIFFDefaultTransferFunction(): give up beyond td_bitspersample = 24
|
||||||
|
(Fixes https://github.com/OSGeo/gdal/issues/10875)
|
||||||
|
|
||||||
|
* tif_getimage.c: Remove unnecessary calls to TIFFRGBAImageOK()
|
||||||
|
(fixes :issue:`175`)
|
||||||
|
|
||||||
|
* Fix writing a Predictor=3 file with non-native endianness
|
||||||
|
|
||||||
|
* _TIFFVSetField(): fix potential use of unallocated memory (out-of-bounds
|
||||||
|
read / nullptr dereference) in case of out-of-memory situation when dealing
|
||||||
|
with custom tags (fixes :issue:`663`)
|
||||||
|
|
||||||
|
* tif_fax3.c: Error out for CCITT fax encoding if SamplesPerPixel is not equal
|
||||||
|
1 and PlanarConfiguration = Contiguous (fixes :issue:`26`)
|
||||||
|
|
||||||
|
* tif_fax3.c: error out after a number of times end-of-line or unexpected bad
|
||||||
|
code words have been reached. (fixes :issue:`670`)
|
||||||
|
|
||||||
|
* Fix memory leak in TIFFSetupStrips() (fixes :issue:`665`)
|
||||||
|
|
||||||
|
* tif_zip.c: Provide zlib allocation functions.
|
||||||
|
Otherwise for zlib built with -DZ_SOLO inflating will fail.
|
||||||
|
|
||||||
|
* Fix memory leak in _TIFFSetDefaultCompressionState. (fixes :issue:`676`)
|
||||||
|
|
||||||
|
* tif_predict.c: Don’t overwrite input buffer of TIFFWriteScanline() if
|
||||||
|
"prediction" is enabled. Use extra working buffer in PredictorEncodeRow().
|
||||||
|
(fixes :issue:`5`)
|
||||||
|
|
||||||
|
* tif_getimage.c: update some integer overflow checks (fixes :issue:`79`)
|
||||||
|
|
||||||
|
* tif_getimage.c: Fix buffer underflow crash for less raster rows at
|
||||||
|
TIFFReadRGBAImageOriented() (fixes :issue:`704`)
|
||||||
|
|
||||||
|
* TIFFReadRGBAImage(): several fixes to avoid buffer overflows.
|
||||||
|
|
||||||
|
* Correct passing arguments to TIFFCvtIEEEFloatToNative() and
|
||||||
|
TIFFCvtIEEEDoubleToNative() if HAVE_IEEEFP is not defined. (fixes
|
||||||
|
:issue:`699`)
|
||||||
|
|
||||||
|
* LZWDecode(): avoid nullptr dereference when trying to read again after EOI
|
||||||
|
marker has been found with remaining output bytes (fixes :issue:`698`)
|
||||||
|
|
||||||
|
* TIFFSetSubDirectory(): check _TIFFCheckDirNumberAndOffset() return.
|
||||||
|
|
||||||
|
* TIFFUnlinkDirectory() and TIFFWriteDirectorySec(): clear tif_rawcp when
|
||||||
|
clearing tif_rawdata (fixes :issue:`711`)
|
||||||
|
|
||||||
|
* JPEGEncodeRaw(): error out if a previous scanline failed to be written, to
|
||||||
|
avoid out-of-bounds access (fixes :issue:`714`)
|
||||||
|
|
||||||
|
* tif_jpeg: Fix bug in JPEGDecodeRaw() if JPEG_LIB_MK1_OR_12BIT is defined for
|
||||||
|
8/12bit dual mode, introduced in libjpeg-turbo 2.2, which was actually
|
||||||
|
released as 3.0. (fixes :issue:`717`)
|
||||||
|
|
||||||
|
* add assert for TIFFReadCustomDirectory infoarray check.
|
||||||
|
|
||||||
|
Other changes:
|
||||||
|
|
||||||
|
* tif_jpeg.c: use JPEG_MAX_DIMENSION constant instead of hard-coded 65535 value
|
||||||
|
|
||||||
|
* tif_lzw.c / tif_packbits.c: use NULL instead of 0.
|
||||||
|
|
||||||
|
* Take into account PACKBITS_READ_ONLY, LZW_READ_ONLY, and LERC_READ_ONLY
|
||||||
|
macros to disable compiling write-support for those codecs.
|
||||||
|
|
||||||
|
* tif_lerc.c: add missing casts
|
||||||
|
|
||||||
|
* Merge several functions implemented twice in different modules.
|
||||||
|
(see :issue:`154`)
|
||||||
|
|
||||||
|
* Remove get_field_type form TIFFField structure because it is not used
|
||||||
|
anymore and rename other parameter to set_get_field_type
|
||||||
|
|
||||||
|
* Silence some Coverity Scan warnigs and mark already dismissed ones.
|
||||||
|
|
||||||
|
* References to codec libraries updated and missing codec compile defines
|
||||||
|
(tiffconf.h) added.
|
||||||
|
|
||||||
|
* Move mkg3states under libtiff/tools. (fixes :issue:`708`)
|
||||||
|
|
||||||
|
* tiff_itrunc(): don't use rand() to please Coverity Scan.
|
||||||
|
|
||||||
|
* tiffio.h: fix compilation with LOGLUV_PUBLIC=0
|
||||||
|
|
||||||
|
* LICENSE.md: Add BSD license for Lempel-Ziv & Welch compression (tif_lzw.c)
|
||||||
|
(fixes :issue:`431`)
|
||||||
|
|
||||||
|
Documentation
|
||||||
|
-------------
|
||||||
|
|
||||||
|
* TIFFRGBAImage.rst note added for incorrect saving of images with TIFF
|
||||||
|
orientation from 5 (LeftTop) to 8 (LeftBottom) in the raster.
|
||||||
|
|
||||||
|
* TIFFRGBAImage.rst note added about un-associated alpha handling
|
||||||
|
(fixes :issue:`67`)
|
||||||
|
|
||||||
|
* Update "Defining New TIFF Tags" description. (fixes :issue:`642`)
|
||||||
|
|
||||||
|
* Fix return type of TIFFReadEncodedTile()
|
||||||
|
|
||||||
|
* Update the documentation to reflect deprecated typedefs.
|
||||||
|
|
||||||
|
* TIFFWriteDirectory.rst: Clarify TIFFSetWriteOffset() only sets offset for
|
||||||
|
image data and not for IFD data.
|
||||||
|
|
||||||
|
* Update documentation on re-entrancy and thread safety.
|
||||||
|
|
||||||
|
* Remove dead links to no more existing Awaresystems web-site.
|
||||||
|
|
||||||
|
* Updating BigTIFF specification and some miscelaneous editions.
|
||||||
|
|
||||||
|
* Replace some last links and remove last todos.
|
||||||
|
|
||||||
|
* Added hints for correct allocation of TIFFYCbCrtoRGB structure and its
|
||||||
|
associated buffers. (fixes :issue:`681`)
|
||||||
|
|
||||||
|
* Added chapter to "Using the TIFF Library" with links to handling multi-page
|
||||||
|
TIFF and custom directories. (fixes :issue:`43`)
|
||||||
|
|
||||||
|
* update TIFFOpen.rst with the return values of mapproc and unmapproc.
|
||||||
|
(fixes :issue:`12`)
|
||||||
|
|
||||||
|
Tools changes
|
||||||
|
-------------
|
||||||
|
|
||||||
|
New/improved functionality:
|
||||||
|
|
||||||
|
* tiffinfo: add a -W switch to warn about unknown tags.
|
||||||
|
|
||||||
|
* tiffdither: process all pages in input TIFF file.
|
||||||
|
|
||||||
|
Bug fixes:
|
||||||
|
|
||||||
|
* ppm2tiff: Fix bug in `pack_words` trailing bytes, where last two bytes of
|
||||||
|
each line were written wrongly. (fixes :issue:`467`)
|
||||||
|
|
||||||
|
* fax2ps: fix regression of commit 28c38d648b64a66c3218778c4745225fe3e3a06d
|
||||||
|
where TIFFTAG_FAXFILLFUNC is being used rather than an output buffer
|
||||||
|
(fixes :issue:`649`)
|
||||||
|
|
||||||
|
* tiff2pdf: Check TIFFTAG_TILELENGTH and TIFFTAGTILEWIDTH (fixes :issue:`650`)
|
||||||
|
|
||||||
|
* tiff2pdf: check h_samp and v_samp for range 1 to 4 to avoid division by
|
||||||
|
zero. (fixes :issue:`654`)
|
||||||
|
|
||||||
|
* tiff2pdf: avoid null pointer dereference. (fixes :issue:`741`)
|
||||||
|
|
||||||
|
* Improve non-secure integer overflow check (comparison of division result
|
||||||
|
with multiplicant) at compiler optimisation in tiffcp, rgb2ycbcr and tiff2rgba. (fixes :issue:`546`)
|
||||||
|
|
||||||
|
* tiff2rgba: fix some "a partial expression can generate an overflow before it
|
||||||
|
is assigned to a broader type" warnings. (fixes :issue:`682`)
|
||||||
|
|
||||||
|
* tiffdither/tiffmedian: Don't skip the first line of the input image.
|
||||||
|
(fixes :issue:`703`)
|
||||||
|
|
||||||
|
* tiffdither: avoid out-of-bounds read identified in :issue:`733`
|
||||||
|
|
||||||
|
* tiffmedian: error out if TIFFReadScanline() fails (fixes :issue:`707`)
|
||||||
|
|
||||||
|
* tiffmedian: close input file. (fixes :issue:`735`)
|
||||||
|
|
||||||
|
* thumbail: avoid potential out of bounds access (fixes :issue:`715`)
|
||||||
|
|
||||||
|
* tiffcrop: close open TIFF files and release allocated buffers before exiting
|
||||||
|
in case of error to avoid memory leaks. (fixes :issue:`716`)
|
||||||
|
|
||||||
|
* tiffcrop: fix double-free and memory leak exposed by :issue:`721`
|
||||||
|
|
||||||
|
* tiffcrop: avoid buffer overflow. (fixes :issue:`740`)
|
||||||
|
|
||||||
|
* tiffcrop: avoid nullptr dereference. (fixes :issue:`734`)
|
||||||
|
|
||||||
|
* tiffdump: Fix coverity scan issue CID 1373365: Passing tainted expression
|
||||||
|
\*datamem to PrintData, which uses it as a divisor or modulus.
|
||||||
|
|
||||||
|
* tiff2ps: check return of TIFFGetFiled() for TIFFTAG_STRIPBYTECOUNTS and
|
||||||
|
TIFFTAG_TILEBYTECOUNTS to avoid NULL pointer dereference.
|
||||||
|
(fixes :issue:`718`)
|
||||||
|
|
||||||
|
* tiffcmp: fix memory leak when second file cannot be opened.
|
||||||
|
(fixes :issue:`718` and :issue:`729`)
|
||||||
|
|
||||||
|
* tiffcp: fix setting compression level for lossless codecs.
|
||||||
|
(fixes :issue:`730`)
|
||||||
|
|
||||||
|
* raw2tiff: close input file before exit (fixes :issue:`742`)
|
||||||
|
|
||||||
|
Changes to contributed and unsupported tools
|
||||||
|
--------------------------------------------
|
||||||
|
|
||||||
|
* addtiffo: Fixing MSVC compiler warnings
|
||||||
|
|
||||||
|
* Improved oss-fuzz fuzzer tiff_read_rgba_fuzzer.cc.
|
||||||
|
|
||||||
|
* oss-fuzz: fix memory leak in fuzz target.
|
||||||
Reference in New Issue
Block a user