libjpeg-turbo/libjpeg-turbo.changes

861 lines
42 KiB
Plaintext
Raw Normal View History

-------------------------------------------------------------------
Fri Jun 23 17:39:37 UTC 2023 - pgajdos@suse.com
- merge two spec files into one
-------------------------------------------------------------------
Thu May 4 11:37:31 UTC 2023 - Dominique Leuenberger <dimstar@opensuse.org>
- Add _multibuild to define 2nd spec file as additional flavor.
Eliminates the need for source package links in OBS.
-------------------------------------------------------------------
Wed Mar 8 13:00:00 UTC 2023 - Martin Pluskal <mpluskal@suse.com>
- Build AVX2 enabled hwcaps library for x86_64-v3
Accepting request 1066935 from home:polslinux:branches:graphics - update to 2.1.5.1: * Fixed a regression introduced by 2.0 beta1[15] that caused a buffer overrun in the progressive Huffman encoder when attempting to transform a specially-crafted malformed 12-bit-per-component JPEG image into a progressive 12-bit-per-component JPEG image using a 12-bit-per-component build of libjpeg-turbo. * Fixed an issue whereby, when using a 12-bit-per-component build of libjpeg-turbo (-DWITH_12BIT=1), passing samples with values greater than 4095 or less than 0 to jpeg_write_scanlines() caused a buffer overrun or underrun in the RGB-to-YCbCr color converter. * Fixed a floating point exception that occurred when attempting to use the jpegtran -drop and -trim options to losslessly transform a specially-crafted malformed JPEG image. * Fixed an issue in tjBufSizeYUV2() whereby it returned a bogus result, rather than throwing an error, if the align parameter was not a power of 2. * Fixed a similar issue in tjCompressFromYUV() whereby it generated a corrupt JPEG image in certain cases, rather than throwing an error, if the align parameter was not a power of 2. * Fixed an issue whereby tjDecompressToYUV2(), which is a wrapper for tjDecompressToYUVPlanes(), used the desired YUV image dimensions rather than the actual scaled image dimensions when computing the plane pointers and strides to pass to tjDecompressToYUVPlanes(). This caused a buffer overrun and subsequent segfault if the desired image dimensions exceeded the scaled image dimensions. * Fixed an issue whereby, when decompressing a 12-bit-per-component JPEG image (-DWITH_12BIT=1) using an alpha-enabled output color space such as JCS_EXT_RGBA, the alpha channel was set to 255 rather than 4095. * Fixed an issue whereby the Java version of TJBench did not accept a range of quality values. * Fixed an issue whereby, when -progressive was passed to TJBench, OBS-URL: https://build.opensuse.org/request/show/1066935 OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=136
2023-02-24 08:32:56 +01:00
-------------------------------------------------------------------
Tue Feb 21 08:22:09 UTC 2023 - Paolo Stivanin <info@paolostivanin.com>
- update to 2.1.5.1:
* Fixed a regression introduced by 2.0 beta1[15] that caused a buffer
overrun in the progressive Huffman encoder when attempting to transform
a specially-crafted malformed 12-bit-per-component JPEG image into a
progressive 12-bit-per-component JPEG image using a 12-bit-per-component
build of libjpeg-turbo.
* Fixed an issue whereby, when using a 12-bit-per-component build of
libjpeg-turbo (-DWITH_12BIT=1), passing samples with values greater than 4095
or less than 0 to jpeg_write_scanlines() caused a buffer overrun or
underrun in the RGB-to-YCbCr color converter.
* Fixed a floating point exception that occurred when attempting to use
the jpegtran -drop and -trim options to losslessly transform a
specially-crafted malformed JPEG image.
* Fixed an issue in tjBufSizeYUV2() whereby it returned a bogus result,
rather than throwing an error, if the align parameter was not a power of 2.
* Fixed a similar issue in tjCompressFromYUV() whereby it generated a corrupt
JPEG image in certain cases, rather than throwing an error,
if the align parameter was not a power of 2.
* Fixed an issue whereby tjDecompressToYUV2(), which is a wrapper for
tjDecompressToYUVPlanes(), used the desired YUV image dimensions
rather than the actual scaled image dimensions when computing the plane
pointers and strides to pass to tjDecompressToYUVPlanes().
This caused a buffer overrun and subsequent segfault if the desired
image dimensions exceeded the scaled image dimensions.
* Fixed an issue whereby, when decompressing a 12-bit-per-component JPEG
image (-DWITH_12BIT=1) using an alpha-enabled output color space such as
JCS_EXT_RGBA, the alpha channel was set to 255 rather than 4095.
* Fixed an issue whereby the Java version of TJBench did not accept a range
of quality values.
* Fixed an issue whereby, when -progressive was passed to TJBench,
the JPEG input image was not transformed into a progressive JPEG image
prior to decompression.
-------------------------------------------------------------------
Sat Dec 24 12:04:53 UTC 2022 - Dirk Stoecker <opensuse@dstoecker.de>
- Add explicit provides for jpegtran, so it can be installed easier
Accepting request 995212 from home:derselbst:branches:graphics - update to 2.1.4: * Fixed a regression introduced in 2.1.3 that caused build failures with Visual Studio 2010. * The tjDecompressHeader3() function in the TurboJPEG C API and the TJDecompressor.setSourceImage() method in the TurboJPEG Java API now accept "abbreviated table specification" (AKA "tables-only") datastreams, which can be used to prime the decompressor with quantization and Huffman tables that can be used when decompressing subsequent "abbreviated image" datastreams. * libjpeg-turbo now performs run-time detection of AltiVec instructions on OS X/PowerPC systems if AltiVec instructions are not enabled at compile time. This allows both AltiVec-equipped (PowerPC G4 and G5) and non-AltiVec-equipped (PowerPC G3) CPUs to be supported using the same build of libjpeg-turbo. * Fixed an error ("Bogus virtual array access") that occurred when attempting to decompress a progressive JPEG image with a height less than or equal to one iMCU (8 * the vertical sampling factor) using buffered-image mode with interblock smoothing enabled. This was a regression introduced by 2.1 beta1[6(b)]. * Fixed two issues that prevented partial image decompression from working properly with buffered-image mode: * Attempting to call jpeg_crop_scanline() after jpeg_start_decompress() but before jpeg_start_output() resulted in an error ("Improper call to JPEG library in state 207".) * Attempting to use jpeg_skip_scanlines() resulted in an error ("Bogus virtual array access") under certain circumstances. OBS-URL: https://build.opensuse.org/request/show/995212 OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=132
2022-08-18 15:43:40 +02:00
-------------------------------------------------------------------
Mon Aug 15 18:07:30 UTC 2022 - Tom Mbrt <tom.mbrt@googlemail.com>
- update to 2.1.4:
* Fixed a regression introduced in 2.1.3 that caused build failures with
Visual Studio 2010.
* The tjDecompressHeader3() function in the TurboJPEG C API and the
TJDecompressor.setSourceImage() method in the TurboJPEG Java API now
accept "abbreviated table specification" (AKA "tables-only") datastreams,
which can be used to prime the decompressor with quantization and Huffman
tables that can be used when decompressing subsequent "abbreviated image"
datastreams.
* libjpeg-turbo now performs run-time detection of AltiVec instructions on
OS X/PowerPC systems if AltiVec instructions are not enabled at compile
time. This allows both AltiVec-equipped (PowerPC G4 and G5) and
non-AltiVec-equipped (PowerPC G3) CPUs to be supported using the same
build of libjpeg-turbo.
* Fixed an error ("Bogus virtual array access") that occurred when
attempting to decompress a progressive JPEG image with a height less than
or equal to one iMCU (8 * the vertical sampling factor) using
buffered-image mode with interblock smoothing enabled. This was a
regression introduced by 2.1 beta1[6(b)].
* Fixed two issues that prevented partial image decompression from working
properly with buffered-image mode:
* Attempting to call jpeg_crop_scanline() after jpeg_start_decompress()
but before jpeg_start_output() resulted in an error ("Improper call to
JPEG library in state 207".)
* Attempting to use jpeg_skip_scanlines() resulted in an error ("Bogus
virtual array access") under certain circumstances.
-------------------------------------------------------------------
Tue Jul 5 08:08:38 UTC 2022 - Jan Engelhardt <jengelh@inai.de>
- Add requires between baselibs
-------------------------------------------------------------------
Mon Apr 18 20:36:09 UTC 2022 - Cristian Rodríguez <crrodriguez@opensuse.org>
- Use nasm instead of yasm, the latter has not released any update
in 7 years.
-------------------------------------------------------------------
Sun Mar 20 19:33:28 UTC 2022 - Dirk Müller <dmueller@suse.com>
- update to 2.1.3:
* Fixed a regression introduced by 2.0 beta1[7] whereby cjpeg compressed PGM
input files into full-color JPEG images unless the `-grayscale` option was
used.
* cjpeg now automatically compresses GIF and 8-bit BMP input files into
grayscale JPEG images if the input files contain only shades of gray.
* The build system now enables the intrinsics implementation of the AArch64
(Arm 64-bit) Neon SIMD extensions by default when using GCC 12 or later.
* Fixed a segfault that occurred while decompressing a 4:2:0 JPEG image using
the merged (non-fancy) upsampling algorithms (that is, with
`cinfo.do_fancy_upsampling` set to `FALSE`) along with `jpeg_crop_scanline()`.
Specifically, the segfault occurred if the number of bytes remaining in the
output buffer was less than the number of bytes required to represent one
uncropped scanline of the output image. For that reason, the issue could only
be reproduced using the libjpeg API, not using djpeg.
Accepting request 933591 from home:dirkmueller:Factory - update to 2.1.2: * Fixed a regression introduced by 2.1 beta1[13] that caused the remaining GAS implementations of AArch64 (Arm 64-bit) Neon SIMD functions (which are used by default with GCC for performance reasons) to be placed in the `.rodata` section rather than in the `.text` section. This caused the GNU linker to automatically place the `.rodata` section in an executable segment, which prevented libjpeg-turbo from working properly with other linkers and also represented a potential security risk. * Fixed an issue whereby the `tjTransform()` function incorrectly computed the MCU block size for 4:4:4 JPEG images with non-unary sampling factors and thus unduly rejected some cropping regions, even though those regions aligned with 8x8 MCU block boundaries. * Fixed a regression introduced by 2.1 beta1[13] that caused the build system to enable the Arm Neon SIMD extensions when targetting Armv6 and other legacy architectures that do not support Neon instructions. * libjpeg-turbo now performs run-time detection of AltiVec instructions on FreeBSD/PowerPC systems if AltiVec instructions are not enabled at compile time. This allows both AltiVec-equipped and non-AltiVec-equipped CPUs to be supported using the same build of libjpeg-turbo. * cjpeg now accepts a `-strict` argument similar to that of djpeg and jpegtran, which causes the compressor to abort if an LZW-compressed GIF input image contains incomplete or corrupt image data. OBS-URL: https://build.opensuse.org/request/show/933591 OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=124
2021-11-25 11:04:41 +01:00
-------------------------------------------------------------------
Wed Nov 24 21:39:14 UTC 2021 - Dirk Müller <dmueller@suse.com>
- update to 2.1.2:
* Fixed a regression introduced by 2.1 beta1[13] that caused the remaining
GAS implementations of AArch64 (Arm 64-bit) Neon SIMD functions (which are used
by default with GCC for performance reasons) to be placed in the `.rodata`
section rather than in the `.text` section. This caused the GNU linker to
automatically place the `.rodata` section in an executable segment, which
prevented libjpeg-turbo from working properly with other linkers and also
represented a potential security risk.
* Fixed an issue whereby the `tjTransform()` function incorrectly computed the
MCU block size for 4:4:4 JPEG images with non-unary sampling factors and thus
unduly rejected some cropping regions, even though those regions aligned with
8x8 MCU block boundaries.
* Fixed a regression introduced by 2.1 beta1[13] that caused the build system
to enable the Arm Neon SIMD extensions when targetting Armv6 and other legacy
architectures that do not support Neon instructions.
* libjpeg-turbo now performs run-time detection of AltiVec instructions on
FreeBSD/PowerPC systems if AltiVec instructions are not enabled at compile
time. This allows both AltiVec-equipped and non-AltiVec-equipped CPUs to be
supported using the same build of libjpeg-turbo.
* cjpeg now accepts a `-strict` argument similar to that of djpeg and
jpegtran, which causes the compressor to abort if an LZW-compressed GIF input
image contains incomplete or corrupt image data.
-------------------------------------------------------------------
Wed Sep 29 13:03:15 UTC 2021 - pgajdos@suse.com
- previous version updates fixes following bugs:
CVE-2014-9092, CVE-2018-14498, CVE-2019-2201, CVE-2020-17541
(bsc#1128712, bsc#1186764, bsc#807183, bsc#906761)
-------------------------------------------------------------------
Fri Aug 20 11:43:06 UTC 2021 - pgajdos@suse.com
- version update to 2.1.1
1. Fixed a regression introduced in 2.1.0 that caused build failures
with non-GCC-compatible compilers for Un*x/Arm platforms.
2. Fixed a regression introduced by 2.1 beta1[13] that prevented the
Arm 32-bit (AArch32) Neon SIMD extensions from building unless
the C compiler flags included -mfloat-abi=softfp or -mfloat-abi=hard.
3. Fixed an issue in the AArch32 Neon SIMD Huffman encoder whereby
reliance on undefined C compiler behavior led to crashes
("SIGBUS: illegal alignment") on Android systems when running
AArch32/Thumb builds of libjpeg-turbo built with recent versions
of Clang.
4. Added a command-line argument (-copy icc) to jpegtran that causes
it to copy only the ICC profile markers from the source file and
discard any other metadata.
5. libjpeg-turbo should now build and run on CHERI-enabled
architectures, which use capability pointers that are larger than
the size of size_t.
6. Fixed a regression introduced by 2.1 beta1[5] that caused a segfault
in the 64-bit SSE2 Huffman encoder when attempting to losslessly
transform a specially-crafted malformed JPEG image.
-------------------------------------------------------------------
Tue May 4 11:12:57 UTC 2021 - Dirk Müller <dmueller@suse.com>
- disable SIMD for armv6hl, not available
-------------------------------------------------------------------
Mon Apr 26 15:30:08 UTC 2021 - Guillaume GARDET <guillaume.gardet@opensuse.org>
- version update to 2.1.0
lot of changes, see
* https://github.com/libjpeg-turbo/libjpeg-turbo/releases/tag/2.0.90
* https://github.com/libjpeg-turbo/libjpeg-turbo/releases/tag/2.1.0
- version update to 2.0.6 1. Fixed "using JNI after critical get" errors that occurred on Android platforms when using any of the YUV encoding/compression/decompression/decoding methods in the TurboJPEG Java API. 2. Fixed or worked around multiple issues with `jpeg_skip_scanlines()`: - Fixed segfaults or "Corrupt JPEG data: premature end of data segment" errors in `jpeg_skip_scanlines()` that occurred when decompressing 4:2:2 or 4:2:0 JPEG images using merged (non-fancy) upsampling/color conversion (that is, when setting `cinfo.do_fancy_upsampling` to `FALSE`.) 2.0.0[6] was a similar fix, but it did not cover all cases. - `jpeg_skip_scanlines()` now throws an error if two-pass color quantization is enabled. Two-pass color quantization never worked properly with `jpeg_skip_scanlines()`, and the issues could not readily be fixed. - Fixed an issue whereby `jpeg_skip_scanlines()` always returned 0 when skipping past the end of an image. 3. The Arm 64-bit (Armv8) Neon SIMD extensions can now be built using MinGW toolchains targetting Arm64 (AArch64) Windows binaries. 4. Fixed unexpected visual artifacts that occurred when using `jpeg_crop_scanline()` and interblock smoothing while decompressing only the DC scan of a progressive JPEG image. 5. Fixed an issue whereby libjpeg-turbo would not build if 12-bit-per-component JPEG support (`WITH_12BIT`) was enabled along with libjpeg v7 or libjpeg v8 API/ABI emulation (`WITH_JPEG7` or `WITH_JPEG8`.) - modified sources % libjpeg-turbo.keyring OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=113
2020-12-28 16:40:36 +01:00
-------------------------------------------------------------------
Mon Jan 11 10:58:07 UTC 2021 - Andreas Schwab <schwab@suse.de>
- Fix setting of FLOATTEST
-------------------------------------------------------------------
- version update to 2.0.6 1. Fixed "using JNI after critical get" errors that occurred on Android platforms when using any of the YUV encoding/compression/decompression/decoding methods in the TurboJPEG Java API. 2. Fixed or worked around multiple issues with `jpeg_skip_scanlines()`: - Fixed segfaults or "Corrupt JPEG data: premature end of data segment" errors in `jpeg_skip_scanlines()` that occurred when decompressing 4:2:2 or 4:2:0 JPEG images using merged (non-fancy) upsampling/color conversion (that is, when setting `cinfo.do_fancy_upsampling` to `FALSE`.) 2.0.0[6] was a similar fix, but it did not cover all cases. - `jpeg_skip_scanlines()` now throws an error if two-pass color quantization is enabled. Two-pass color quantization never worked properly with `jpeg_skip_scanlines()`, and the issues could not readily be fixed. - Fixed an issue whereby `jpeg_skip_scanlines()` always returned 0 when skipping past the end of an image. 3. The Arm 64-bit (Armv8) Neon SIMD extensions can now be built using MinGW toolchains targetting Arm64 (AArch64) Windows binaries. 4. Fixed unexpected visual artifacts that occurred when using `jpeg_crop_scanline()` and interblock smoothing while decompressing only the DC scan of a progressive JPEG image. 5. Fixed an issue whereby libjpeg-turbo would not build if 12-bit-per-component JPEG support (`WITH_12BIT`) was enabled along with libjpeg v7 or libjpeg v8 API/ABI emulation (`WITH_JPEG7` or `WITH_JPEG8`.) - modified sources % libjpeg-turbo.keyring OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=113
2020-12-28 16:40:36 +01:00
Mon Dec 28 15:39:18 UTC 2020 - pgajdos@suse.com
- version update to 2.0.6
1. Fixed "using JNI after critical get" errors that occurred on Android
platforms when using any of the YUV encoding/compression/decompression/decoding
methods in the TurboJPEG Java API.
2. Fixed or worked around multiple issues with `jpeg_skip_scanlines()`:
- Fixed segfaults or "Corrupt JPEG data: premature end of data segment"
errors in `jpeg_skip_scanlines()` that occurred when decompressing 4:2:2 or
4:2:0 JPEG images using merged (non-fancy) upsampling/color conversion (that
is, when setting `cinfo.do_fancy_upsampling` to `FALSE`.) 2.0.0[6] was a
similar fix, but it did not cover all cases.
- `jpeg_skip_scanlines()` now throws an error if two-pass color
quantization is enabled. Two-pass color quantization never worked properly
with `jpeg_skip_scanlines()`, and the issues could not readily be fixed.
- Fixed an issue whereby `jpeg_skip_scanlines()` always returned 0 when
skipping past the end of an image.
3. The Arm 64-bit (Armv8) Neon SIMD extensions can now be built using MinGW
toolchains targetting Arm64 (AArch64) Windows binaries.
4. Fixed unexpected visual artifacts that occurred when using
`jpeg_crop_scanline()` and interblock smoothing while decompressing only the DC
scan of a progressive JPEG image.
5. Fixed an issue whereby libjpeg-turbo would not build if 12-bit-per-component
JPEG support (`WITH_12BIT`) was enabled along with libjpeg v7 or libjpeg v8
API/ABI emulation (`WITH_JPEG7` or `WITH_JPEG8`.)
- modified sources
% libjpeg-turbo.keyring
Accepting request 826111 from home:elimat:branches:graphics - Update to version 2.0.5 * Worked around issues in the MIPS DSPr2 SIMD extensions that caused failures in the libjpeg-turbo regression tests. Specifically, the jsimd_h2v1_downsample_dspr2() and jsimd_h2v2_downsample_dspr2() functions in the MIPS DSPr2 SIMD extensions are now disabled until/unless they can be fixed, and other functions that are incompatible with big endian MIPS CPUs are disabled when building libjpeg-turbo for such CPUs. * Fixed an oversight in the TJCompressor.compress(int) method in the TurboJPEG Java API that caused an error ("java.lang.IllegalStateException: No source image is associated with this instance") when attempting to use that method to compress a YUV image. * Fixed an issue (CVE-2020-13790) in the PPM reader that caused a buffer overrun in cjpeg, TJBench, or the tjLoadImage() function if one of the values in a binary PPM/PGM input file exceeded the maximum value defined in the file's header and that maximum value was less than 255. libjpeg-turbo 1.5.0 already included a similar fix for binary PPM/PGM files with maximum values greater than 255. * The TurboJPEG API library's global error handler, which is used in functions such as tjBufSize() and tjLoadImage() that do not require a TurboJPEG instance handle, is now thread-safe on platforms that support thread-local storage. - Fix source verification - Drop patches fixed upstream: * ctest-depends.patch * libjpeg-turbo-CVE-2020-13790.patch - Run spec-cleaner * Remove package groups * Use make macros - Update to version 2.0.5 * Worked around issues in the MIPS DSPr2 SIMD extensions that caused failures in the libjpeg-turbo regression tests. Specifically, the jsimd_h2v1_downsample_dspr2() and jsimd_h2v2_downsample_dspr2() functions in the MIPS DSPr2 SIMD extensions are now disabled until/unless they can be fixed, and other functions that are incompatible with big endian MIPS CPUs are disabled when building libjpeg-turbo for such CPUs. * Fixed an oversight in the TJCompressor.compress(int) method in the TurboJPEG Java API that caused an error ("java.lang.IllegalStateException: No source image is associated with this instance") when attempting to use that method to compress a YUV image. * Fixed an issue (CVE-2020-13790) in the PPM reader that caused a buffer overrun in cjpeg, TJBench, or the tjLoadImage() function if one of the values in a binary PPM/PGM input file exceeded the maximum value defined in the file's header and that maximum value was less than 255. libjpeg-turbo 1.5.0 already included a similar fix for binary PPM/PGM files with maximum values greater than 255. * The TurboJPEG API library's global error handler, which is used in functions such as tjBufSize() and tjLoadImage() that do not require a TurboJPEG instance handle, is now thread-safe on platforms that support thread-local storage. - Drop patches fixed upstream: * ctest-depends.patch * libjpeg-turbo-CVE-2020-13790.patch - Run spec-cleaner * Remove package groups * Use make macros OBS-URL: https://build.opensuse.org/request/show/826111 OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=111
2020-08-13 09:14:02 +02:00
-------------------------------------------------------------------
Wed Aug 12 21:24:44 UTC 2020 - Matthias Eliasson <elimat@opensuse.org>
- Update to version 2.0.5
* Worked around issues in the MIPS DSPr2 SIMD extensions that caused failures
in the libjpeg-turbo regression tests. Specifically, the
jsimd_h2v1_downsample_dspr2() and jsimd_h2v2_downsample_dspr2() functions
in the MIPS DSPr2 SIMD extensions are now disabled until/unless they can be
fixed, and other functions that are incompatible with big endian MIPS CPUs
are disabled when building libjpeg-turbo for such CPUs.
* Fixed an oversight in the TJCompressor.compress(int) method in the
TurboJPEG Java API that caused an error ("java.lang.IllegalStateException:
No source image is associated with this instance") when attempting to use
that method to compress a YUV image.
* Fixed an issue (CVE-2020-13790) in the PPM reader that caused a buffer
overrun in cjpeg, TJBench, or the tjLoadImage() function if one of the
values in a binary PPM/PGM input file exceeded the maximum value defined in
the file's header and that maximum value was less than 255. libjpeg-turbo
1.5.0 already included a similar fix for binary PPM/PGM files with maximum
values greater than 255.
* The TurboJPEG API library's global error handler, which is used in
functions such as tjBufSize() and tjLoadImage() that do not require a
TurboJPEG instance handle, is now thread-safe on platforms that support
thread-local storage.
- Fix source verification
- Drop patches fixed upstream:
* ctest-depends.patch
* libjpeg-turbo-CVE-2020-13790.patch
- Run spec-cleaner
* Remove package groups
* Use make macros
-------------------------------------------------------------------
Mon Jun 8 11:49:47 UTC 2020 - pgajdos@suse.com
- security update
- added patches
fix CVE-2020-13790 [bsc#1172491], heap-based buffer over-read in get_rgb_row() in rdppm.c via a malformed PPM input file
+ libjpeg-turbo-CVE-2020-13790.patch
Accepting request 789475 from home:ukbeast89:branches:graphics - Upate to version 2.0.4: - bug 388 was fixed upstream https://github.com/libjpeg-turbo/libjpeg-turbo/issues/388 - removed patches, as it is included in this release. * Fixed a regression in the Windows packaging system (introduced by 2.0 beta1[2]) whereby, if both the 64-bit libjpeg-turbo SDK for GCC and the 64-bit libjpeg-turbo SDK for Visual C++ were installed on the same system, only one of them could be uninstalled. * Fixed a signed integer overflow and subsequent segfault that occurred when attempting to decompress images with more than 715827882 pixels using the 64-bit C version of TJBench. * Fixed out-of-bounds write in tjDecompressToYUV2() and tjDecompressToYUVPlanes() (sometimes manifesting as a double free) that occurred when attempting to decompress grayscale JPEG images that were compressed with a sampling factor other than 1 (for instance, with cjpeg -grayscale -sample 2x2). * Fixed a regression introduced by 2.0.2[5] that caused the TurboJPEG API to incorrectly identify some JPEG images with unusual sampling factors as 4:4:4 JPEG images. This was known to cause a buffer overflow when attempting to decompress some such images using tjDecompressToYUV2() or tjDecompressToYUVPlanes(). * Fixed an issue, detected by ASan, whereby attempting to losslessly transform a specially-crafted malformed JPEG image containing an extremely-high-frequency coefficient block (junk image data that could never be generated by a legitimate JPEG compressor) could cause the Huffman encoder's local buffer to be overrun. (Refer to 1.4.0[9] and 1.4beta1[15].) Given that the buffer overrun was fully contained within the stack and did not cause a segfault or other user-visible errant behavior, and given that the lossless transformer (unlike the decompressor) is not generally exposed to arbitrary data exploits, this issue did not likely pose a security risk. The ARM 64-bit (ARMv8) NEON SIMD assembly code now stores constants in a separate read-only data section rather than in the text section, to support execute-only memory layouts. - Upate to version 2.0.4: * Fixed a regression in the Windows packaging system (introduced by 2.0 beta1[2]) whereby, if both the 64-bit libjpeg-turbo SDK for GCC and the 64-bit libjpeg-turbo SDK for Visual C++ were installed on the same system, only one of them could be uninstalled. * Fixed a signed integer overflow and subsequent segfault that occurred when attempting to decompress images with more than 715827882 pixels using the 64-bit C version of TJBench. * Fixed out-of-bounds write in tjDecompressToYUV2() and tjDecompressToYUVPlanes() (sometimes manifesting as a double free) that occurred when attempting to decompress grayscale JPEG images that were compressed with a sampling factor other than 1 (for instance, with cjpeg -grayscale -sample 2x2). * Fixed a regression introduced by 2.0.2[5] that caused the TurboJPEG API to incorrectly identify some JPEG images with unusual sampling factors as 4:4:4 JPEG images. This was known to cause a buffer overflow when attempting to decompress some such images using tjDecompressToYUV2() or tjDecompressToYUVPlanes(). * Fixed an issue, detected by ASan, whereby attempting to losslessly transform a specially-crafted malformed JPEG image containing an extremely-high-frequency coefficient block (junk image data that could never be generated by a legitimate JPEG compressor) could cause the Huffman encoder's local buffer to be overrun. (Refer to 1.4.0[9] and 1.4beta1[15].) Given that the buffer overrun was fully contained within the stack and did not cause a segfault or other user-visible errant behavior, and given that the lossless transformer (unlike the decompressor) is not generally exposed to arbitrary data exploits, this issue did not likely pose a security risk. The ARM 64-bit (ARMv8) NEON SIMD assembly code now stores constants in a separate read-only data section rather than in the text section, to support execute-only memory layouts. OBS-URL: https://build.opensuse.org/request/show/789475 OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=104
2020-03-30 09:51:51 +02:00
-------------------------------------------------------------------
Sun Mar 29 10:02:02 UTC 2020 - Aaron Stern <ukbeast89@protonmail.com>
- Upate to version 2.0.4:
- bug 388 was fixed upstream
https://github.com/libjpeg-turbo/libjpeg-turbo/issues/388
- removed patches, as it is included in this release.
* Fixed a regression in the Windows packaging system
(introduced by 2.0 beta1[2]) whereby, if both the 64-bit libjpeg-turbo
SDK for GCC and the 64-bit libjpeg-turbo SDK for Visual C++ were installed
on the same system, only one of them could be uninstalled.
* Fixed a signed integer overflow and subsequent segfault that occurred when
attempting to decompress images with more than 715827882 pixels using the 64-bit C version of TJBench.
* Fixed out-of-bounds write in tjDecompressToYUV2() and tjDecompressToYUVPlanes()
(sometimes manifesting as a double free) that occurred when attempting to decompress
grayscale JPEG images that were compressed with a sampling factor other than 1
(for instance, with cjpeg -grayscale -sample 2x2).
* Fixed a regression introduced by 2.0.2[5] that caused the TurboJPEG API to incorrectly
identify some JPEG images with unusual sampling factors as 4:4:4 JPEG images.
This was known to cause a buffer overflow when attempting to decompress some such images using
tjDecompressToYUV2() or tjDecompressToYUVPlanes().
* Fixed an issue, detected by ASan, whereby attempting to losslessly transform a specially-crafted
malformed JPEG image containing an extremely-high-frequency coefficient block
(junk image data that could never be generated by a legitimate JPEG compressor) could cause the
Huffman encoder's local buffer to be overrun. (Refer to 1.4.0[9] and 1.4beta1[15].)
Given that the buffer overrun was fully contained within the stack and did not cause a segfault
or other user-visible errant behavior, and given that the lossless transformer (unlike the decompressor)
is not generally exposed to arbitrary data exploits, this issue did not likely pose a security risk.
The ARM 64-bit (ARMv8) NEON SIMD assembly code now stores constants in a separate read-only data
section rather than in the text section, to support execute-only memory layouts.
- libjpeg-turbo-issue-388.patch upstreamed
Accepting request 789475 from home:ukbeast89:branches:graphics - Upate to version 2.0.4: - bug 388 was fixed upstream https://github.com/libjpeg-turbo/libjpeg-turbo/issues/388 - removed patches, as it is included in this release. * Fixed a regression in the Windows packaging system (introduced by 2.0 beta1[2]) whereby, if both the 64-bit libjpeg-turbo SDK for GCC and the 64-bit libjpeg-turbo SDK for Visual C++ were installed on the same system, only one of them could be uninstalled. * Fixed a signed integer overflow and subsequent segfault that occurred when attempting to decompress images with more than 715827882 pixels using the 64-bit C version of TJBench. * Fixed out-of-bounds write in tjDecompressToYUV2() and tjDecompressToYUVPlanes() (sometimes manifesting as a double free) that occurred when attempting to decompress grayscale JPEG images that were compressed with a sampling factor other than 1 (for instance, with cjpeg -grayscale -sample 2x2). * Fixed a regression introduced by 2.0.2[5] that caused the TurboJPEG API to incorrectly identify some JPEG images with unusual sampling factors as 4:4:4 JPEG images. This was known to cause a buffer overflow when attempting to decompress some such images using tjDecompressToYUV2() or tjDecompressToYUVPlanes(). * Fixed an issue, detected by ASan, whereby attempting to losslessly transform a specially-crafted malformed JPEG image containing an extremely-high-frequency coefficient block (junk image data that could never be generated by a legitimate JPEG compressor) could cause the Huffman encoder's local buffer to be overrun. (Refer to 1.4.0[9] and 1.4beta1[15].) Given that the buffer overrun was fully contained within the stack and did not cause a segfault or other user-visible errant behavior, and given that the lossless transformer (unlike the decompressor) is not generally exposed to arbitrary data exploits, this issue did not likely pose a security risk. The ARM 64-bit (ARMv8) NEON SIMD assembly code now stores constants in a separate read-only data section rather than in the text section, to support execute-only memory layouts. - Upate to version 2.0.4: * Fixed a regression in the Windows packaging system (introduced by 2.0 beta1[2]) whereby, if both the 64-bit libjpeg-turbo SDK for GCC and the 64-bit libjpeg-turbo SDK for Visual C++ were installed on the same system, only one of them could be uninstalled. * Fixed a signed integer overflow and subsequent segfault that occurred when attempting to decompress images with more than 715827882 pixels using the 64-bit C version of TJBench. * Fixed out-of-bounds write in tjDecompressToYUV2() and tjDecompressToYUVPlanes() (sometimes manifesting as a double free) that occurred when attempting to decompress grayscale JPEG images that were compressed with a sampling factor other than 1 (for instance, with cjpeg -grayscale -sample 2x2). * Fixed a regression introduced by 2.0.2[5] that caused the TurboJPEG API to incorrectly identify some JPEG images with unusual sampling factors as 4:4:4 JPEG images. This was known to cause a buffer overflow when attempting to decompress some such images using tjDecompressToYUV2() or tjDecompressToYUVPlanes(). * Fixed an issue, detected by ASan, whereby attempting to losslessly transform a specially-crafted malformed JPEG image containing an extremely-high-frequency coefficient block (junk image data that could never be generated by a legitimate JPEG compressor) could cause the Huffman encoder's local buffer to be overrun. (Refer to 1.4.0[9] and 1.4beta1[15].) Given that the buffer overrun was fully contained within the stack and did not cause a segfault or other user-visible errant behavior, and given that the lossless transformer (unlike the decompressor) is not generally exposed to arbitrary data exploits, this issue did not likely pose a security risk. The ARM 64-bit (ARMv8) NEON SIMD assembly code now stores constants in a separate read-only data section rather than in the text section, to support execute-only memory layouts. OBS-URL: https://build.opensuse.org/request/show/789475 OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=104
2020-03-30 09:51:51 +02:00
-------------------------------------------------------------------
Tue Mar 17 05:52:14 UTC 2020 - John Whately <john+OpenSuse@whately.me>
- Added If statments for Fedora not having sertain openSUSE macros
-------------------------------------------------------------------
Tue Nov 12 14:09:12 UTC 2019 - pgajdos@suse.com
- fix upstream bug 388 [bsc#1156402]
- added patches
https://github.com/libjpeg-turbo/libjpeg-turbo/issues/388
+ libjpeg-turbo-issue-388.patch
-------------------------------------------------------------------
Sat Oct 5 09:08:03 UTC 2019 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 2.0.3:
* Fixed "using JNI after critical get" errors that occurred on
Android platforms when passing invalid arguments to certain
methods in the TurboJPEG Java API.
* Fixed a regression in the SIMD feature detection code,
introduced by the AVX2 SIMD extensions (2.0 beta1), that was
known to cause an illegal instruction exception, in rare cases,
on CPUs that lack support for CPUID leaf (or on which the
maximum CPUID leaf has been limited by way of a BIOS setting.)
* The 4:4:0 (h1v2) fancy (smooth) chroma upsampling algorithm in
the decompressor now uses a similar bias pattern to that of the
4:2:2 (h2v1) fancy chroma upsampling algorithm, rounding up or
down the upsampled result for alternate pixels rather than
always rounding down. This ensures that, regardless of whether
a 4:2:2 JPEG image is rotated or transposed prior to
decompression (in the frequency domain) or after decompression
(in the spatial domain), the final image will be similar.
* Fixed an integer overflow and subsequent segfault that occurred
when attempting to compress or decompress images with more than
1 billion pixels using the TurboJPEG API.
* Fixed a regression introduced by 2.0 beta1[15] whereby
attempting to generate a progressive JPEG image on an
SSE2-capable CPU using a scan script containing one or more
scans with lengths divisible by 16 would result in an error
("Missing Huffman code table entry") and an invalid JPEG image.
* Fixed an issue whereby `tjDecodeYUV()` and
`tjDecodeYUVPlanes()` would throw an error ("Invalid
progressive parameters") or a warning ("Inconsistent
progression sequence") if passed a TurboJPEG instance that was
previously used to decompress a progressive JPEG image.
-------------------------------------------------------------------
Wed Mar 27 06:46:43 UTC 2019 - pgajdos@suse.com
- use -O0 for debugging like everywhere (better experience)
- updated to version 2.0.2: 1. Fixed a regression introduced by 2.0.1[5] that prevented a runtime search path (rpath) from being embedded in the libjpeg-turbo shared libraries and executables for macOS and iOS. This caused a fatal error of the form "dyld: Library not loaded" when attempting to use one of the executables, unless `DYLD_LIBRARY_PATH` was explicitly set to the location of the libjpeg-turbo shared libraries. 2. Fixed an integer overflow and subsequent segfault (CVE-2018-20330) that occurred when attempting to load a BMP file with more than 1 billion pixels using the `tjLoadImage()` function. 3. Fixed a buffer overrun (CVE-2018-19664) that occurred when attempting to decompress a specially-crafted malformed JPEG image to a 256-color BMP using djpeg. 4. Fixed a floating point exception that occurred when attempting to decompress a specially-crafted malformed JPEG image with a specified image width or height of 0 using the C version of TJBench. 5. The TurboJPEG API will now decompress 4:4:4 JPEG images with 2x1, 1x2, 3x1, or 1x3 luminance and chrominance sampling factors. This is a non-standard way of specifying 1x subsampling (normally 4:4:4 JPEGs have 1x1 luminance and chrominance sampling factors), but the JPEG format and the libjpeg API both allow it. 6. Fixed a regression introduced by 2.0 beta1[7] that caused djpeg to generate incorrect PPM images when used with the `-colors` option. 7. Fixed an issue whereby a static build of libjpeg-turbo (a build in which `ENABLE_SHARED` is `0`) could not be installed using the Visual Studio IDE. 8. Fixed a severe performance issue in the Loongson MMI SIMD extensions that occurred when compressing RGB images whose image rows were not 64-bit-aligned. - modified patches % ctest-depends.patch (refreshed) - deleted patches OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=94
2019-03-13 13:04:41 +01:00
-------------------------------------------------------------------
Wed Mar 13 12:02:57 UTC 2019 - pgajdos@suse.com
- updated to version 2.0.2:
1. Fixed a regression introduced by 2.0.1[5] that prevented a runtime search
path (rpath) from being embedded in the libjpeg-turbo shared libraries and
executables for macOS and iOS. This caused a fatal error of the form
"dyld: Library not loaded" when attempting to use one of the executables,
unless `DYLD_LIBRARY_PATH` was explicitly set to the location of the
libjpeg-turbo shared libraries.
2. Fixed an integer overflow and subsequent segfault (CVE-2018-20330) that
occurred when attempting to load a BMP file with more than 1 billion pixels
using the `tjLoadImage()` function.
3. Fixed a buffer overrun (CVE-2018-19664) that occurred when attempting to
decompress a specially-crafted malformed JPEG image to a 256-color BMP using
djpeg.
4. Fixed a floating point exception that occurred when attempting to
decompress a specially-crafted malformed JPEG image with a specified image
width or height of 0 using the C version of TJBench.
5. The TurboJPEG API will now decompress 4:4:4 JPEG images with 2x1, 1x2, 3x1,
or 1x3 luminance and chrominance sampling factors. This is a non-standard way
of specifying 1x subsampling (normally 4:4:4 JPEGs have 1x1 luminance and
chrominance sampling factors), but the JPEG format and the libjpeg API both
allow it.
6. Fixed a regression introduced by 2.0 beta1[7] that caused djpeg to generate
incorrect PPM images when used with the `-colors` option.
7. Fixed an issue whereby a static build of libjpeg-turbo (a build in which
`ENABLE_SHARED` is `0`) could not be installed using the Visual Studio IDE.
8. Fixed a severe performance issue in the Loongson MMI SIMD extensions that
occurred when compressing RGB images whose image rows were not 64-bit-aligned.
- modified patches
% ctest-depends.patch (refreshed)
- deleted patches
- libjpeg-turbo-CVE-2018-19644.patch (upstreamed)
- libjpeg-turbo-CVE-2018-20330.patch (upstreamed)
- added sources
+ libjpeg-turbo-2.0.2.tar.gz.sig
+ libjpeg-turbo.keyring
-------------------------------------------------------------------
Thu Jan 24 08:51:58 UTC 2019 - Jan Engelhardt <jengelh@inai.de>
- Use -Og for debug_build
-------------------------------------------------------------------
Thu Jan 3 16:45:38 UTC 2019 - Petr Gajdos <pgajdos@suse.com>
- security update
* CVE-2018-20330 [bsc#1120646]
+ libjpeg-turbo-CVE-2018-20330.patch
-------------------------------------------------------------------
Wed Jan 2 10:13:10 UTC 2019 - Petr Gajdos <pgajdos@suse.com>
- security update
* CVE-2018-19644 [bsc#1117890]
+ libjpeg-turbo-CVE-2018-19644.patch
-------------------------------------------------------------------
Mon Dec 3 10:48:42 UTC 2018 - Petr Gajdos <pgajdos@suse.com>
- asan_build: build ASAN included
- debug_build: build more suitable for debugging
-------------------------------------------------------------------
Tue Nov 13 11:14:01 UTC 2018 - Petr Gajdos <pgajdos@suse.com>
- update to version 2.0.1:
* jsimd_quantize_float_dspr2() and jsimd_convsamp_float_dspr2()
functions in the MIPS DSPr2 SIMD extensions are now disabled
at compile time if the soft float ABI is enabled
* Fixed a regression in the SIMD feature detection code,
introduced by the AVX2 SIMD extensions
* Fixed out-of-bounds read in cjpeg that occurred when attempting
to compress a specially-crafted malformed color-index
(8-bit-per-sample) Targa file
-------------------------------------------------------------------
Mon Sep 24 07:11:27 UTC 2018 - schwab@suse.de
- Define FLOATTEST=64bit on ppc
- ctest-depends.patch: Add missing testsuite depedencies
-------------------------------------------------------------------
Wed Aug 8 15:45:50 UTC 2018 - jengelh@inai.de
- Update description and switch out MMX/SSE by the more generic
term SIMD.
-------------------------------------------------------------------
Wed Aug 1 11:39:01 UTC 2018 - tchvatal@suse.com
- Version update to 2.0.0:
* Cmake as a buildsystem
* avx support
* Better error handling
* More use of SSE2
- Drop patch libjpeg-1.4.0-ocloexec.patch; conflicts, would be better
handled by upstream anyway
- Drop patches merged upstream:
* libjpeg-turbo-CVE-2018-11813.patch
* libjpeg-turbo-CVE-2018-1152.patch
-------------------------------------------------------------------
Tue Jun 19 13:40:32 UTC 2018 - pgajdos@suse.com
- security update:
* CVE-2018-1152 [bsc#1098155]
+ libjpeg-turbo-CVE-2018-1152.patch
-------------------------------------------------------------------
Tue Jun 12 13:34:11 UTC 2018 - pgajdos@suse.com
- security update:
* CVE-2018-11813 [bsc#1096209]
+ libjpeg-turbo-CVE-2018-11813.patch
* remove redundant libjpeg-turbo-CVE-2017-15232.patch
[bsc#1062937#c17]
- - update to version 1.5.3 1. Fixed a NullPointerException in the TurboJPEG Java wrapper that occurred when using the YUVImage constructor that creates an instance backed by separate image planes and allocates memory for the image planes. 2. Fixed an issue whereby the Java version of TJUnitTest would fail when testing BufferedImage encoding/decoding on big endian systems. 3. Fixed a segfault in djpeg that would occur if an output format other than PPM/PGM was selected along with the `-crop` option. The `-crop` option now works with the GIF and Targa formats as well (unfortunately, it cannot be made to work with the BMP and RLE formats due to the fact that those output engines write scanlines in bottom-up order.) djpeg will now exit gracefully if an output format other than PPM/PGM, GIF, or Targa is selected along with the `-crop` option. 4. Fixed an issue whereby `jpeg_skip_scanlines()` would segfault if color quantization was enabled. 5. TJBench (both C and Java versions) will now display usage information if any command-line argument is unrecognized. This prevents the program from silently ignoring typos. 6. Fixed an access violation in tjbench.exe (Windows) that occurred when the program was used to decompress an existing JPEG image. 7. Fixed an ArrayIndexOutOfBoundsException in the TJExample Java program that occurred when attempting to decompress a JPEG image that had been compressed with 4:1:1 chrominance subsampling. 8. Fixed an issue whereby, when using `jpeg_skip_scanlines()` to skip to the end of a single-scan (non-progressive) image, subsequent calls to `jpeg_consume_input()` would return `JPEG_SUSPENDED` rather than `JPEG_REACHED_EOI`. 9. `jpeg_crop_scanlines()` now works correctly when decompressing grayscale JPEG images that were compressed with a sampling factor other than 1 (for instance, with `cjpeg -grayscale -sample 2x2`). OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=73
2017-12-18 14:29:47 +01:00
-------------------------------------------------------------------
Mon Dec 18 13:29:30 UTC 2017 - pgajdos@suse.com
- - update to version 1.5.3
1. Fixed a NullPointerException in the TurboJPEG Java wrapper that occurred
when using the YUVImage constructor that creates an instance backed by separate
image planes and allocates memory for the image planes.
2. Fixed an issue whereby the Java version of TJUnitTest would fail when
testing BufferedImage encoding/decoding on big endian systems.
3. Fixed a segfault in djpeg that would occur if an output format other than
PPM/PGM was selected along with the `-crop` option. The `-crop` option now
works with the GIF and Targa formats as well (unfortunately, it cannot be made
to work with the BMP and RLE formats due to the fact that those output engines
write scanlines in bottom-up order.) djpeg will now exit gracefully if an
output format other than PPM/PGM, GIF, or Targa is selected along with the
`-crop` option.
4. Fixed an issue whereby `jpeg_skip_scanlines()` would segfault if color
quantization was enabled.
5. TJBench (both C and Java versions) will now display usage information if any
command-line argument is unrecognized. This prevents the program from silently
ignoring typos.
6. Fixed an access violation in tjbench.exe (Windows) that occurred when the
program was used to decompress an existing JPEG image.
7. Fixed an ArrayIndexOutOfBoundsException in the TJExample Java program that
occurred when attempting to decompress a JPEG image that had been compressed
with 4:1:1 chrominance subsampling.
8. Fixed an issue whereby, when using `jpeg_skip_scanlines()` to skip to the
end of a single-scan (non-progressive) image, subsequent calls to
`jpeg_consume_input()` would return `JPEG_SUSPENDED` rather than
`JPEG_REACHED_EOI`.
9. `jpeg_crop_scanlines()` now works correctly when decompressing grayscale
JPEG images that were compressed with a sampling factor other than 1 (for
instance, with `cjpeg -grayscale -sample 2x2`).
-------------------------------------------------------------------
Thu Oct 12 10:59:03 UTC 2017 - pgajdos@suse.com
- security update:
* CVE-2017-15232 [bsc#1062937]
+ libjpeg-turbo-CVE-2017-15232.patch
- Update to version 1.5.2 + Fixed several memory leaks in the TurboJPEG API library that could occur if the library was built with certain compilers and optimization levels. + The libjpeg-turbo memory manager will now honor the max_memory_to_use structure member in jpeg_memory_mgr, which can be set to the maximum amount of memory (in bytes) that libjpeg-turbo should use during decompression or multi-pass (including progressive) compression. This limit can also be set using the JPEGMEM environment variable or using the -maxmemory switch in cjpeg/djpeg/jpegtran. + TJBench will now run each benchmark for 1 second prior to starting the timer, in order to improve the consistency of the results. Furthermore, the -warmup option is now used to specify the amount of warmup time rather than the number of warmup iterations. + Fixed an error (short jump is out of range) that occurred when assembling the 32-bit x86 SIMD extensions with NASM versions prior to 2.04. + Fixed a regression introduced by 1.5 beta1[11] that prevented the Java version of TJBench from outputting any reference images (the -nowrite switch was accidentally enabled by default.) libjpeg-turbo should now build and run with full AltiVec SIMD acceleration on PowerPC-based AmigaOS 4 and OpenBSD systems. - Update to version 1.5.2 + Fixed several memory leaks in the TurboJPEG API library that could occur if the library was built with certain compilers and optimization levels. + The libjpeg-turbo memory manager will now honor the OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=69
2017-10-12 12:36:08 +02:00
-------------------------------------------------------------------
Thu Oct 12 10:22:05 UTC 2017 - pgajdos@suse.com
- Update to version 1.5.2
+ Fixed several memory leaks in the TurboJPEG API library that
could occur if the library was built with certain compilers
and optimization levels.
+ The libjpeg-turbo memory manager will now honor the
max_memory_to_use structure member in jpeg_memory_mgr,
which can be set to the maximum amount of memory (in bytes)
that libjpeg-turbo should use during decompression or
multi-pass (including progressive) compression. This limit
can also be set using the JPEGMEM environment variable or
using the -maxmemory switch in cjpeg/djpeg/jpegtran.
+ TJBench will now run each benchmark for 1 second prior to
starting the timer, in order to improve the consistency of
the results. Furthermore, the -warmup option is now used to
specify the amount of warmup time rather than the number of
warmup iterations.
+ Fixed an error (short jump is out of range) that occurred
when assembling the 32-bit x86 SIMD extensions with NASM
versions prior to 2.04.
+ Fixed a regression introduced by 1.5 beta1[11] that prevented
the Java version of TJBench from outputting any reference images
(the -nowrite switch was accidentally enabled by default.)
libjpeg-turbo should now build and run with full AltiVec SIMD
acceleration on PowerPC-based AmigaOS 4 and OpenBSD systems.
-------------------------------------------------------------------
Wed Jan 18 10:07:00 UTC 2017 - bwiedemann@suse.com
- set build date to enable reproducible builds
- Update to version 1.5.1 + Fix for PowerPC platforms lacking AltiVec instructions + Fix ABI problem with clang/llvm on aarch64. + Fancy upsampling is now supported when decompressing JPEG images that use 4:4:0 (h1v2) chroma subsampling. + If merged upsampling isn't SIMD-accelerated but YCbCr-to-RGB conversion is, then libjpeg-turbo will now disable merged upsampling when decompressing YCbCr JPEG images into RGB or extended RGB output images. This significantly speeds up the decompression of 4:2:0 and 4:2:2 JPEGs on ARM platforms if fancy upsampling is not used (for example, if the -nosmooth option to djpeg is specified.) + The TurboJPEG API will now decompress 4:2:2 and 4:4:0 JPEG images with 2x2 luminance sampling factors and 2x1 or 1x2 chrominance sampling factors. + Fixed an unsigned integer overflow in the libjpeg memory manager. + Fixed additional negative left shifts and other issues reported by the GCC and Clang undefined behavior sanitizers when attempting to decompress specially-crafted malformed JPEG images. None of these issues posed a security threat, but removing the warnings makes it easier to detect actual security issues, should they arise in the future. + Fixed an out-of-bounds array reference, introduced by 1.4.902 and detected by the Clang undefined behavior sanitizer, that could be triggered by a specially-crafted malformed JPEG image with more than four components. Because the out-of-bounds reference was still within the same structure, it was not known to pose a security threat, but removing the warning makes it easier to detect actual security issues, should they arise in the future. OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=61
2016-09-21 13:02:46 +02:00
-------------------------------------------------------------------
Wed Sep 21 10:50:36 UTC 2016 - idonmez@suse.com
- Update to version 1.5.1 fate#324061
- Update to version 1.5.1 + Fix for PowerPC platforms lacking AltiVec instructions + Fix ABI problem with clang/llvm on aarch64. + Fancy upsampling is now supported when decompressing JPEG images that use 4:4:0 (h1v2) chroma subsampling. + If merged upsampling isn't SIMD-accelerated but YCbCr-to-RGB conversion is, then libjpeg-turbo will now disable merged upsampling when decompressing YCbCr JPEG images into RGB or extended RGB output images. This significantly speeds up the decompression of 4:2:0 and 4:2:2 JPEGs on ARM platforms if fancy upsampling is not used (for example, if the -nosmooth option to djpeg is specified.) + The TurboJPEG API will now decompress 4:2:2 and 4:4:0 JPEG images with 2x2 luminance sampling factors and 2x1 or 1x2 chrominance sampling factors. + Fixed an unsigned integer overflow in the libjpeg memory manager. + Fixed additional negative left shifts and other issues reported by the GCC and Clang undefined behavior sanitizers when attempting to decompress specially-crafted malformed JPEG images. None of these issues posed a security threat, but removing the warnings makes it easier to detect actual security issues, should they arise in the future. + Fixed an out-of-bounds array reference, introduced by 1.4.902 and detected by the Clang undefined behavior sanitizer, that could be triggered by a specially-crafted malformed JPEG image with more than four components. Because the out-of-bounds reference was still within the same structure, it was not known to pose a security threat, but removing the warning makes it easier to detect actual security issues, should they arise in the future. OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=61
2016-09-21 13:02:46 +02:00
+ Fix for PowerPC platforms lacking AltiVec instructions
+ Fix ABI problem with clang/llvm on aarch64.
+ Fancy upsampling is now supported when decompressing JPEG
images that use 4:4:0 (h1v2) chroma subsampling.
+ If merged upsampling isn't SIMD-accelerated but YCbCr-to-RGB
conversion is, then libjpeg-turbo will now disable merged
upsampling when decompressing YCbCr JPEG images into RGB
or extended RGB output images. This significantly speeds up
the decompression of 4:2:0 and 4:2:2 JPEGs on ARM platforms
if fancy upsampling is not used
(for example, if the -nosmooth option to djpeg is specified.)
+ The TurboJPEG API will now decompress 4:2:2 and 4:4:0 JPEG
images with 2x2 luminance sampling factors and 2x1 or 1x2
chrominance sampling factors.
+ Fixed an unsigned integer overflow in the libjpeg memory manager.
+ Fixed additional negative left shifts and other issues reported
by the GCC and Clang undefined behavior sanitizers when
attempting to decompress specially-crafted malformed JPEG
images. None of these issues posed a security threat, but
removing the warnings makes it easier to detect actual
security issues, should they arise in the future.
+ Fixed an out-of-bounds array reference, introduced by
1.4.902 and detected by the Clang undefined behavior sanitizer,
that could be triggered by a specially-crafted malformed
JPEG image with more than four components. Because the
out-of-bounds reference was still within the same structure,
it was not known to pose a security threat, but removing
the warning makes it easier to detect actual security issues,
should they arise in the future.
- Update to version 1.5.0 + Fixed an issue whereby a malformed motion-JPEG frame could cause the "fast path" of libjpeg-turbo's Huffman decoder to read from uninitialized memory. + Added libjpeg-turbo version and build information to the global string table of the libjpeg and TurboJPEG API libraries. + Fixed a couple of issues in the PPM reader that would cause buffer overruns in cjpeg if one of the values in a binary PPM/PGM input file exceeded the maximum value defined in the file's header. libjpeg-turbo 1.4.2 already included a similar fix for ASCII PPM/PGM files. Note that these issues were not security bugs, since they were confined to the cjpeg program and did not affect any of the libjpeg-turbo libraries. + Fixed an issue whereby attempting to decompress a JPEG file with a corrupt header using the tjDecompressToYUV2() function would cause the function to abort without returning an error and, under certain circumstances, corrupt the stack. This only occurred if tjDecompressToYUV2() was called prior to calling tjDecompressHeader3(), or if the return value from tjDecompressHeader3() was ignored (both cases represent incorrect usage of the TurboJPEG API.) + The jpeg_stdio_src(), jpeg_mem_src(), jpeg_stdio_dest(), and jpeg_mem_dest() functions in the libjpeg API will now throw an error if a source/destination manager has already been assigned to the compress or decompress object by a different function or by the calling program. - Update to version 1.5.0 + Fixed an issue whereby a malformed motion-JPEG frame could cause the "fast path" of libjpeg-turbo's Huffman decoder to OBS-URL: https://build.opensuse.org/package/show/graphics/libjpeg-turbo?expand=0&rev=59
2016-06-08 10:11:04 +02:00
-------------------------------------------------------------------
Wed Jun 8 07:53:26 UTC 2016 - idonmez@suse.com
- Update to version 1.5.0
+ Fixed an issue whereby a malformed motion-JPEG frame could
cause the "fast path" of libjpeg-turbo's Huffman decoder to
read from uninitialized memory.
+ Added libjpeg-turbo version and build information to the global
string table of the libjpeg and TurboJPEG API libraries.
+ Fixed a couple of issues in the PPM reader that would cause
buffer overruns in cjpeg if one of the values in a binary
PPM/PGM input file exceeded the maximum value defined in the
file's header. libjpeg-turbo 1.4.2 already included a similar
fix for ASCII PPM/PGM files. Note that these issues were not
security bugs, since they were confined to the cjpeg program
and did not affect any of the libjpeg-turbo libraries.
+ Fixed an issue whereby attempting to decompress a JPEG file with
a corrupt header using the tjDecompressToYUV2() function would
cause the function to abort without returning an error and,
under certain circumstances, corrupt the stack. This only
occurred if tjDecompressToYUV2() was called prior to calling
tjDecompressHeader3(), or if the return value from
tjDecompressHeader3() was ignored (both cases represent
incorrect usage of the TurboJPEG API.)
+ The jpeg_stdio_src(), jpeg_mem_src(), jpeg_stdio_dest(),
and jpeg_mem_dest() functions in the libjpeg API will now
throw an error if a source/destination manager has already
been assigned to the compress or decompress object by a
different function or by the calling program.
-------------------------------------------------------------------
Thu Oct 8 07:53:53 UTC 2015 - idonmez@suse.com
- Update to version 1.4.2
+ Crash fixes
+ clang compatibility fixes
+ See the included ChangeLog.txt for the details
- Drop libjpeg-turbo-1.4.0-int32.patch, not needed anymore.
- Drop libjpeg-turbo-remove-test.patch, fixed upstream.
-------------------------------------------------------------------
Thu Mar 5 11:43:27 UTC 2015 - jengelh@inai.de
- Remove useless same-name provides. Use download URLs not
dependent on directory structure.
-------------------------------------------------------------------
Mon Mar 2 16:22:23 UTC 2015 - normand@linux.vnet.ibm.com
- Remove float tests with new libjpeg-turbo-remove-test.patch
same as Fedora bug 1161585 related to upstream issue
https://sourceforge.net/p/libjpeg-turbo/bugs/83/
-------------------------------------------------------------------
Sat Jan 10 00:39:57 UTC 2015 - p.drouand@gmail.com
- Update to version 1.4.0
+ Fixed a build issue on OS X PowerPC platforms (md5cmp failed to build
because OS X does not provide the le32toh() and htole32() functions.)
+ The non-SIMD RGB565 color conversion code did not work correctly on big
endian machines. This has been fixed.
+ Fixed an issue in tjPlaneSizeYUV() whereby it would erroneously return 1
instead of -1 if componentID was > 0 and subsamp was TJSAMP_GRAY.
+ Fixed an issue in tjBufSizeYUV2() wherby it would erroneously return 0
instead of -1 if width was < 1.
+ The Huffman encoder now uses clz and bsr instructions for bit counting on
ARM64 platforms (see 1.4 beta1 [5].)
+ The close() method in the TJCompressor and TJDecompressor Java classes is
now idempotent. Previously, that method would call the native tjDestroy()
function even if the TurboJPEG instance had already been destroyed. This
caused an exception to be thrown during finalization, if the close() method had
already been called. The exception was caught, but it was still an expensive
operation.
+ The TurboJPEG API previously generated an error ("Could not determine
subsampling type for JPEG image") when attempting to decompress grayscale JPEG
images that were compressed with a sampling factor other than 1 (for instance,
with 'cjpeg -grayscale -sample 2x2'). Subsampling technically has no meaning
with grayscale JPEGs, and thus the horizontal and vertical sampling factors
for such images are ignored by the decompressor. However, the TurboJPEG API
was being too rigid and was expecting the sampling factors to be equal to 1
before it treated the image as a grayscale JPEG.
+ cjpeg, djpeg, and jpegtran now accept an argument of -version, which will
print the library version and exit.
+ Referring to 1.4 beta1 [15], another extremely rare circumstance was
discovered under which the Huffman encoder's local buffer can be overrun
when a buffered destination manager is being used and an
extremely-high-frequency block (basically junk image data) is being encoded.
Even though the Huffman local buffer was increased from 128 bytes to 136 bytes
to address the previous issue, the new issue caused even the larger buffer to
be overrun. Further analysis reveals that, in the absolute worst case (such as
setting alternating AC coefficients to 32767 and -32768 in the JPEG scanning
order), the Huffman encoder can produce encoded blocks that approach double the
size of the unencoded blocks. Thus, the Huffman local buffer was increased to
256 bytes, which should prevent any such issue from re-occurring in the future.
+ The new tjPlaneSizeYUV(), tjPlaneWidth(), and tjPlaneHeight() functions
were not actually usable on any platform except OS X and Windows, because
those functions were not included in the libturbojpeg mapfile. This has been
fixed.
+ Restored the JPP(), JMETHOD(), and FAR macros in the libjpeg-turbo header
files. The JPP() and JMETHOD() macros were originally implemented in libjpeg
as a way of supporting non-ANSI compilers that lacked support for prototype
parameters. libjpeg-turbo has never supported such compilers, but some
software packages still use the macros to define their own prototypes.
Similarly, libjpeg-turbo has never supported MS-DOS and other platforms that
have far symbols, but some software packages still use the FAR macro. A pretty
good argument can be made that this is a bad practice on the part of the
software in question, but since this affects more than one package, it's just
easier to fix it here.
+ Fixed issues that were preventing the ARM 64-bit SIMD code from compiling
for iOS, and included an ARMv8 architecture in all of the binaries installed by
the "official" libjpeg-turbo SDK for OS X.
- Adapt patches to upstream changes
libjpeg-ocloexec.patch > libjpeg-1.4.0-ocloexec.patch
libjpeg-turbo-1.3.0-int32.patch > libjpeg-turbo-1.4.0-int32.patch
- Remove libjpeg-turbo-CVE-2014-9092.patch; fixed on upstream release
- Bump tminor to 1
-------------------------------------------------------------------
Thu Nov 27 09:50:00 UTC 2014 - pgajdos@suse.com
- security update CVE-2014-9092 [bnc#906761]
* added libjpeg-turbo-CVE-2014-9092.patch
-------------------------------------------------------------------
Wed Oct 15 11:39:09 UTC 2014 - olaf@aepfle.de
- Obsolete jpeg version 6b, 8.0.1 and 8.0.2 to avoid conflicts
during zypper dup
-------------------------------------------------------------------
Mon Mar 31 09:29:11 UTC 2014 - pgajdos@suse.com
- update to 1.3.1:
* Fixed a bug whereby attempting to encode a progressive JPEG
with arithmetic entropy coding (by passing arguments of
-progressive -arithmetic to cjpeg or jpegtran, for instance)
would result in an error, "Requested feature was omitted at
compile time".
* Fixed a couple of issues whereby malformed JPEG images would
cause libjpeg-turbo to use uninitialized memory during
decompression.
* Fixed an error ("Buffer passed to JPEG library is too small")
that occurred when calling the TurboJPEG YUV encoding function
with a very small (< 5x5) source image, and added a unit test
to check for this error.
* etc. see ChangeLog.txt
-------------------------------------------------------------------
Thu Feb 20 21:16:13 UTC 2014 - tchvatal@suse.com
- Provide right name for turbo library 32bit generating.
-------------------------------------------------------------------
Fri Feb 7 13:55:46 UTC 2014 - tchvatal@suse.com
- Require libturbojpeg in the devel package.
Otherwise we just have dangling symlink there.
-------------------------------------------------------------------
Tue Sep 10 12:42:45 UTC 2013 - pgajdos@suse.com
- update do 1.3.0:
* Fixed a Huffman encoder bug that prevented I/O suspension from
working properly.
* Added support for additional scaling factors (3/8, 5/8, 3/4,
7/8, 9/8, 5/4, 11/8, 3/2, 13/8, 7/4, 15/8, and 2) when
decompressing. Note that the IDCT will not be SIMD-accelerated
when using any of these new scaling factors.
* The tjDecompressToYUV() function now supports the TJFLAG_FASTDCT
flag.
* cjpeg can now be used to generate JPEG files with the RGB
colorspace (feature ported from jpeg-8d.)
* etc. see ChangeLog.txt
-------------------------------------------------------------------
Mon May 27 18:21:55 UTC 2013 - crrodriguez@opensuse.org
- Build with full RELRO as this library is exposed to
possible malicious images.
-------------------------------------------------------------------
Fri May 17 07:28:47 UTC 2013 - pgajdos@suse.com
- libjpeg62-turbo package created [bnc#807183]
-------------------------------------------------------------------
Mon Aug 13 17:05:35 UTC 2012 - dmueller@suse.com
- selfconflicts are not possible, remove it
-------------------------------------------------------------------
Mon Jul 23 11:33:56 UTC 2012 - pgajdos@suse.com
- Update to version 1.2.1:
* fixed heap overflow [bnc#771791]
-------------------------------------------------------------------
Thu Mar 22 13:25:09 UTC 2012 - idonmez@suse.com
- Update to version 1.2.0
* Fixed out-of-bounds read in SSE2 SIMD code
* Added a compile-time macro (LIBJPEG_TURBO_VERSION) that can
be used to check the version of libjpeg-turbo against which
an application was compiled.
* Added new RGBA/BGRA/ABGR/ARGB colorspace extension constants
* libjpeg-turbo will now correctly decompress erroneous
CMYK/YCCK JPEGs whose K component is assigned a component ID
of 1 instead of 4.
* Added SIMD routines for RGB-to-grayscale color conversion
* Improved the performance of the C color conversion routines
* Added a function to the TurboJPEG API that performs lossless
transforms.
* Added support for 4:4:0 (transposed 4:2:2) subsampling
-------------------------------------------------------------------
Sat Nov 19 20:38:03 UTC 2011 - coolo@suse.com
- add libtool as buildrequire to avoid implicit dependency
-------------------------------------------------------------------
Sat Nov 12 22:54:58 UTC 2011 - crrodriguez@opensuse.org
- Open all file descriptors with O_CLOEXEC, extended description
in the patch file.
-------------------------------------------------------------------
Thu May 19 14:44:56 CEST 2011 - pgajdos@suse.cz
- updated to 1.1.1:
* Fixed a 1-pixel error in row 0, column 21 of the luminance
plane generated by tjEncodeYUV().
* libjpeg-turbo's accelerated Huffman decoder previously
ignored unexpected markers found in the middle of the
JPEG data stream during decompression. It will now
hand off decoding of a particular block to the unaccelerated
Huffman decoder if an unexpected marker is found, so that
the unaccelerated Huffman decoder can generate an appropriate
warning.
* Fixed a bug in jpeg_read_coefficients() whereby it would
not initialize cinfo->image_width and cinfo->image_height
if libjpeg v7 or v8 emulation was enabled. This specifically
caused the jpegoptim program to fail if it was linked against
a version of libjpeg-turbo that was built with libjpeg v7 or
v8 emulation.
* Eliminated excessive I/O overhead that occurred when reading
BMP files in cjpeg.
*
-------------------------------------------------------------------
Thu Mar 3 13:53:18 CET 2011 - pgajdos@suse.cz
- updated to 1.1.0:
* Added further protections against invalid Huffman codes.
* Added an extended version of tjDecompressHeader().
* Added arithmetic encoding and decoding support.
* TurboJPEG/OSS can now compress from/decompress to
grayscale bitmaps.
* Added emulation of the libjpeg v7 and v8 APIs and ABIs.
* Added two new TurboJPEG API functions, tjEncodeYUV() and
tjDecompressToYUV().
* The TurboJPEG dynamic library now uses versioned symbols.
* Fixed visual artifacts in grayscale JPEG compression
caused by a typo in the RGB-to-chrominance lookup tables.
- see ChangeLog.txt for details.
- removed upstreamed jpegtran.patch and rh639672.patch
-------------------------------------------------------------------
Tue Dec 14 14:32:56 CET 2010 - pgajdos@suse.cz
- spec file cleanup
-------------------------------------------------------------------
Fri Dec 10 13:02:58 UTC 2010 - pgajdos@novell.com
- this jpeg version will be the default to the prejudice of jpeg8
from now on
-------------------------------------------------------------------
Sun Nov 7 12:53:26 UTC 2010 - prusnak@opensuse.org
- created package based on Fedora one (v 1.0.1)