Skip to content

Releases: AcademySoftwareFoundation/openexr

v3.3.12

22 Jun 04:42

Choose a tag to compare

This release addresses the following security vulnerabilities:

  • CVE-2026-55373 OpenEXRUtil SampleCountChannel endEdit() can loop forever on UINT_MAX sample counts
  • CVE-2026-55059 OpenEXRUtil SampleCountChannel row setter heap out-of-bounds write
  • CVE-2026-54920 Integer Overflow and Use of Uninitialized Pointer leading to Invalid Delete in OpenEXRUtil Image Resize

v3.2.10

22 Jun 04:42

Choose a tag to compare

Patch release for 3.2 addressing security issues

This release addresses the following security vulnerabilities:

  • CVE-2026-55373 OpenEXRUtil SampleCountChannel endEdit() can loop forever on UINT_MAX sample counts
  • CVE-2026-55059 OpenEXRUtil SampleCountChannel row setter heap out-of-bounds write
  • CVE-2026-54920 Integer Overflow and Use of Uninitialized Pointer leading to Invalid Delete in OpenEXRUtil Image Resize

v3.4.13

19 Jun 18:33

Choose a tag to compare

Patch release that addresses several bugs and security
vulnerabilities.

  • 🐛 Fix a regression introduced in v3.4.11 in decoding of DWAA compression
  • 🐛 Fix to handling deep images and very large images with the OpenEXRUtil library
  • 🐛 Fix initiliazation issue in B44A decoding
  • 🐛 Validate HTJ2K chunk header length before decode
  • 🛠️ Fix when building statically and using the vendored OpenJPH library

For the python module:

  • 🐍 ✨ Support NumPy scalar values Box2i and V2f tuple bindings

This release addresses the following security vulnerabilities:

  • CVE-2026-55373 OpenEXRUtil SampleCountChannel endEdit() can loop forever on UINT_MAX sample counts
  • CVE-2026-55371 OpenEXRCore exr_attr_set_bytes() accepts NULL type_hint with positive hint_length
  • CVE-2026-55059 OpenEXRUtil SampleCountChannel row setter heap out-of-bounds write
  • CVE-2026-54920 Integer Overflow and Use of Uninitialized Pointer leading to Invalid Delete in OpenEXRUtil Image Resize
  • CVE-2026-53532 Unhandled assert abort in HTJ2K decoder via crafted QCD marker (DoS)

v3.4.12

25 May 01:03

Choose a tag to compare

Patch release that addresses several bugs and security vulnerabilities.

  • 🐛 Fix several minor memory leaks recovering from reading invalid files.
  • 🐛 The compressor API incorrectly identified HTJ2K and HTJ2K256 as lossy; they are lossles.
  • 🐛 Fix CMake AVX feature detection that caused DWA SIMD code to fail on certain architectures.
  • ⚠️ The WidenFilename utility function is marked as deprecated, to be removed in a future release.
  • exrmetrics now print the on-disk size of the data portion of each part. Useful for determining compression impact on part data

For the python module:

  • 🐍 🐛 Reject files where the dataWindows does not match the pixel array dimensions.
  • 🐍 ✨ Support NumPy float vector attributes
  • 🐍 ✨ Reading now skips over invalid parts, returns the valid parts only.
  • 🐍 📖 Doc strings have proper indentation

This release addresses the following security vulnerabilities:

v3.4.11

29 Apr 22:34

Choose a tag to compare

Patch release that addresses the following security vulnerabilities:

  • CVE-2026-42217 Shift exponent overflow in readVariableLengthInteger() (ImfIDManifest.cpp)

  • CVE-2026-42216 Out-of-bounds read in IDManifest::init() during prefix expansion

  • CVE-2026-41142 Integer overflow in ImageChannel::resize leads to heap OOB write via OpenEXRUtil public API

  • OSS-fuzz 504280155 Heap-buffer-overflow in DwaCompressor_uncompress

  • OSS-fuzz 505062709 Null-dereference READ in Imf_3_3::prefixFromLayerName

Build fixes:

  • Fix Windows ARM64EC build issues and correct SIMD ARM NEON path for ARM64/EC

Also, some minor documentation updates:

  • GitHub Security Advisories are the preferred way of reporting vulnerabilities, not email.
  • Some clarification around handling of UFT-8 of file paths

v3.3.11

29 Apr 22:33

Choose a tag to compare

Patch release for 3.3 that addresses the following security vulnerabilities:

  • CVE-2026-42217 Shift exponent overflow in readVariableLengthInteger() (ImfIDManifest.cpp)

  • CVE-2026-42216 Out-of-bounds read in IDManifest::init() during prefix expansion

  • CVE-2026-41142 Integer overflow in ImageChannel::resize leads to heap OOB write via OpenEXRUtil public API

  • OSS-fuzz 504280155 Heap-buffer-overflow in DwaCompressor_uncompress

v3.2.9

29 Apr 22:32

Choose a tag to compare

Patch release for 3.2 that addresses the following security vulnerabilities:

  • CVE-2026-42217 Shift exponent overflow in readVariableLengthInteger() (ImfIDManifest.cpp)

  • CVE-2026-42216 Out-of-bounds read in IDManifest::init() during prefix expansion

  • CVE-2026-41142 Integer overflow in ImageChannel::resize leads to heap OOB write via OpenEXRUtil public API

  • OSS-fuzz 504280155 Heap-buffer-overflow in DwaCompressor_uncompress

v3.4.10

17 Apr 19:51

Choose a tag to compare

Patch release that addresses the following security vulnerabilities:

v3.3.10

17 Apr 16:04

Choose a tag to compare

Patch release that addresses the following security vulnerabilities:

v3.2.8

17 Apr 16:03

Choose a tag to compare

Patch release that addresses the following security vulnerabilities: