Revisions of libjpeg-turbo

buildservice-autocommit accepted request 1136025 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 16)
baserev update by copy to link target
Dirk Mueller's avatar Dirk Mueller (dirkmueller) committed (revision 15)
- update to 3.0.1 (bsc#1211542, CVE-2023-2804):
  * The x86-64 SIMD functions now use a standard stack frame,
    prologue, and epilogue so that debuggers and profilers can
    reliably capture backtraces from within the functions.
  * Fixed two minor issues in the interblock smoothing algorithm
    that caused mathematical (but not necessarily perceptible)
    edge block errors when decompressing progressive JPEG images
    exactly two MCU blocks in width or that use vertical
    chrominance subsampling.
  * The TurboJPEG API now supports 4:4:1 (transposed 4:1:1)
    chrominance subsampling, which allows losslessly transposed or
    rotated 4:1:1 JPEG images to be losslessly cropped, partially
    decompressed, or decompressed to planar YUV images.
  * Fixed various segfaults and buffer overruns (CVE-2023-2804)
  * that occurred when attempting to decompress various
    specially-crafted malformed 12-bit-per-component and
    16-bit-per-component lossless JPEG images using color
    quantization or merged chroma upsampling/color conversion.  The
    underlying cause of these issues was that the color
    quantization and merged chroma upsampling/color conversion
    algorithms were not designed with lossless decompression
    in mind.  Since libjpeg-turbo explicitly does not support color
    conversion when compressing or decompressing lossless JPEG
    images, merged chroma upsampling/color conversion never should
    have been enabled for such images.  Color quantization is a
    legacy feature that serves little or no purpose with lossless
    JPEG images, so it is also now disabled when decompressing such
    images.  (As a result, djpeg can no longer decompress a
    lossless JPEG image into a GIF image.)
  * Fixed an oversight in 1.4 beta1[8] that caused various
Dirk Mueller's avatar Dirk Mueller (dirkmueller) committed (revision 14)
Dirk Mueller's avatar Dirk Mueller (dirkmueller) committed (revision 13)
Dirk Mueller's avatar Dirk Mueller (dirkmueller) committed (revision 12)
- update to 2.1.4:
  * 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.
  * 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.
buildservice-autocommit accepted request 967883 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 11)
baserev update by copy to link target
Dirk Mueller's avatar Dirk Mueller (dirkmueller) committed (revision 10)
Dirk Mueller's avatar Dirk Mueller (dirkmueller) committed (revision 9)
Dirk Mueller's avatar Dirk Mueller (dirkmueller) committed (revision 8)
- 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.
buildservice-autocommit accepted request 933591 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 7)
baserev update by copy to link target
Dirk Mueller's avatar Dirk Mueller (dirkmueller) committed (revision 6)
- 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.
buildservice-autocommit accepted request 890322 from Dirk Mueller's avatar Dirk Mueller (dirkmueller) (revision 5)
baserev update by copy to link target
Dirk Mueller's avatar Dirk Mueller (dirkmueller) committed (revision 4)
- disable SIMD for armv6hl, not available
Dirk Mueller's avatar Dirk Mueller (dirkmueller) committed (revision 3)
Dirk Mueller's avatar Dirk Mueller (dirkmueller) committed (revision 2)
Dirk Mueller's avatar Dirk Mueller (dirkmueller) committed (revision 1)
Displaying all 16 revisions
openSUSE Build Service is sponsored by