Assets
- libjpeg-turbo-3.0.2.tar.gz is the official source tarball for this release. The automatically generated "Source code" assets are not supported.
- Refer to https://libjpeg-turbo.org/Downloads/DigitalSignatures for information regarding the methods used to sign the files in this release and instructions for verifying the signatures.
- Refer to https://libjpeg-turbo.org/Documentation/OfficialBinaries for information regarding the compatibility of the binary packages in this release.
Packaging Changes
- New copies of libjpeg-turbo-3.0.2-vc.exe and libjpeg-turbo-3.0.2-vc64.exe were uploaded on 2024-01-25 to work around a build system issue that caused all Windows libjpeg-turbo components to depend on the Visual C++ run-time DLL.
Support
Code Quality: Stable
Current Support Category: Active
Release Notes
Significant changes relative to 3.0.1:
-
Fixed a signed integer overflow in the
tj3CompressFromYUV8()
,tj3DecodeYUV8()
,tj3DecompressToYUV8()
, andtj3EncodeYUV8()
functions, detected by the Clang and GCC undefined behavior sanitizers, that could be triggered by setting thealign
parameter to an unreasonably large value. This issue did not pose a security threat, but removing the warning made it easier to detect actual security issues, should they arise in the future. -
Introduced a new parameter (
TJPARAM_MAXMEMORY
in the TurboJPEG C API andTJ.PARAM_MAXMEMORY
in the TurboJPEG Java API) and a corresponding TJBench option (-maxmemory
) for specifying the maximum amount of memory (in megabytes) that will be allocated for intermediate buffers, which are used with progressive JPEG compression and decompression, optimized baseline entropy coding, lossless JPEG compression, and lossless transformation. The new parameter and option serve the same purpose as themax_memory_to_use
field in thejpeg_memory_mgr
struct in the libjpeg API, theJPEGMEM
environment variable, and the cjpeg/djpeg/jpegtran-maxmemory
option. -
Introduced a new parameter (
TJPARAM_MAXPIXELS
in the TurboJPEG C API andTJ.PARAM_MAXPIXELS
in the TurboJPEG Java API) and a corresponding TJBench option (-maxpixels
) for specifying the maximum number of pixels that the decompression, lossless transformation, and packed-pixel image loading functions/methods will process. -
Fixed an error ("Unsupported color conversion request") that occurred when attempting to decompress a 3-component lossless JPEG image without an Adobe APP14 marker. The decompressor now assumes that a 3-component lossless JPEG image without an Adobe APP14 marker uses the RGB colorspace if its component IDs are 1, 2, and 3.