OpenEXR 3.4.16__tar.gz → 3.4.17__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {openexr-3.4.16 → openexr-3.4.17}/CHANGES.md +57 -0
- {openexr-3.4.16 → openexr-3.4.17}/PKG-INFO +1 -1
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfContext.cpp +9 -1
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepScanLineOutputFile.cpp +9 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepTiledOutputFile.cpp +17 -4
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/chunk.c +5 -6
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_b44.c +13 -4
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_dwa_compressor.h +14 -1
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_dwa_decoder.h +17 -11
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_structs.c +35 -13
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_structs.h +2 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_util.h +23 -1
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr_chunkio.h +6 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr_version.h +1 -1
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/parse_header.c +17 -16
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/part_attr.c +23 -2
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/validation.c +17 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/deep.cpp +10 -4
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/read.cpp +8 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/write.cpp +80 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testDeepTiledBasic.cpp +205 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testHeader.cpp +60 -2
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/PyOpenEXR.cpp +22 -2
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/PyOpenEXR_old.cpp +11 -2
- openexr-3.4.17/src/wrappers/python/tests/multipart.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/tests/test_rgba.py +30 -0
- {openexr-3.4.16 → openexr-3.4.17}/.bazelrc +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/.bazelversion +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/.clang-format +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/.git-blame-ignore-revs +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/.gitignore +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/.mailmap +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/.readthedocs.yml +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/BUILD.bazel +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/CMakePresets.json +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/CODEOWNERS +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/CODE_OF_CONDUCT.md +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/CONTRIBUTING.md +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/CONTRIBUTORS.md +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/AUTHORS +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/ChangeLog +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/DtexToExr.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/Makefile.test +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/PxBaseDeepHelper.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/PxDeepOutPixel.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/PxDeepOutRow.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/PxDeepUtils.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/PxDeepUtils.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/PxFourChanDeepRgba.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/PxOneChanDeepAlpha.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/PxOneChanDeepOpacity.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/README +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/bootstrap +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/DtexToExr/configure.ac +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/NuGet/OpenEXR-msvc-x64-build.nuget.bat +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/NuGet/OpenEXR-msvc-x64.nuspec +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/NuGet/OpenEXR-msvc-x64.targets +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/NuGet/OpenEXR-msvc-x86-build.nuget.bat +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/NuGet/OpenEXR-msvc-x86.nuspec +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/Contrib/NuGet/OpenEXR-msvc-x86.targets +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/GOVERNANCE.md +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/LICENSE.md +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/MODULE.bazel +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/PATENTS +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/README.md +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/SECURITY.md +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/FindPythonPackage.cmake +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/FindSphinx.cmake +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/IexConfig.h.in +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/IexConfigInternal.h.in +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/IlmThreadConfig.h.in +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/JoinPaths.cmake +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/LibraryDefine.cmake +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/OpenEXR.pc.in +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/OpenEXRConfig.cmake.in +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/OpenEXRConfig.h.in +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/OpenEXRConfigInternal.h.in +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/OpenEXRLibraryDefine.cmake +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/OpenEXRSetup.cmake +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/SampleCTestScript.cmake +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/Toolchain-Linux-VFX_Platform15.cmake +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/Toolchain-mingw.cmake +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/clang-format.cmake +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/cmake/cmake_uninstall.cmake.in +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/docs/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/LICENSE +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/README.md +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/ojph_version.cmake +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_bitbuffer_read.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_bitbuffer_write.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_codeblock.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_codeblock.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_codeblock_fun.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_codeblock_fun.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_codestream.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_codestream_avx.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_codestream_avx2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_codestream_gen.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_codestream_local.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_codestream_local.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_codestream_sse.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_codestream_sse2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_codestream_vsx.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_codestream_wasm.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_params.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_params_local.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_precinct.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_precinct.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_resolution.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_resolution.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_subband.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_subband.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_tile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_tile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_tile_comp.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/codestream/ojph_tile_comp.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/ojph_block_common.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/ojph_block_common.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/ojph_block_decoder.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/ojph_block_decoder32.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/ojph_block_decoder64.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/ojph_block_decoder_avx2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/ojph_block_decoder_ssse3.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/ojph_block_decoder_vsx.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/ojph_block_decoder_wasm.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/ojph_block_encoder.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/ojph_block_encoder.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/ojph_block_encoder_avx2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/ojph_block_encoder_avx2_apple.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/ojph_block_encoder_avx512.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/table0.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/coding/table1.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/openjph/ojph_arch.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/openjph/ojph_arg.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/openjph/ojph_base.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/openjph/ojph_codestream.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/openjph/ojph_defs.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/openjph/ojph_file.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/openjph/ojph_mem.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/openjph/ojph_message.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/openjph/ojph_params.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/openjph/ojph_version.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/others/ojph_arch.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/others/ojph_file.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/others/ojph_mem.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/others/ojph_mem_c.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/others/ojph_message.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/shared/ojph_simd_vsx.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_colour.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_colour.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_colour_avx.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_colour_avx2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_colour_local.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_colour_sse.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_colour_sse2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_colour_vsx.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_colour_wasm.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_transform.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_transform.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_transform_avx.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_transform_avx2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_transform_avx512.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_transform_local.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_transform_sse.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_transform_sse2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_transform_vsx.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/core/transform/ojph_transform_wasm.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/openjph-config.cmake.in +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/src/openjph.pc.in +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/OpenJPH/target_arch.cmake +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/current_deflate_version +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/.gitignore +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/COPYING +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/NEWS.md +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/README.md +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/common_defs.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/adler32.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/arm/adler32_impl.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/arm/cpu_features.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/arm/cpu_features.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/arm/crc32_impl.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/arm/crc32_pmull_helpers.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/arm/crc32_pmull_wide.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/arm/matchfinder_impl.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/bt_matchfinder.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/cpu_features_common.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/crc32.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/crc32_multipliers.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/crc32_tables.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/decompress_template.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/deflate_compress.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/deflate_compress.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/deflate_constants.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/deflate_decompress.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/gzip_compress.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/gzip_constants.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/gzip_decompress.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/hc_matchfinder.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/ht_matchfinder.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/lib_common.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/matchfinder_common.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/riscv/matchfinder_impl.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/utils.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/x86/adler32_impl.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/x86/adler32_template.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/x86/cpu_features.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/x86/cpu_features.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/x86/crc32_impl.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/x86/crc32_pclmul_template.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/x86/decompress_impl.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/x86/matchfinder_impl.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/zlib_compress.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/zlib_constants.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/lib/zlib_decompress.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/deflate/libdeflate.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/external/patchup_deflate_lib.sed +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/pyproject.toml +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/sonar-project.properties +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exr2aces/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exr2aces/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrcheck/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrcheck/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/EnvmapImage.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/EnvmapImage.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/blurImage.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/blurImage.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/makeCubeMap.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/makeCubeMap.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/makeLatLongMap.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/makeLatLongMap.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/namespaceAlias.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/readInputImage.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/readInputImage.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/resizeImage.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrenvmap/resizeImage.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrheader/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrheader/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrinfo/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrinfo/main.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmakepreview/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmakepreview/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmakepreview/makePreview.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmakepreview/makePreview.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmaketiled/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmaketiled/Image.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmaketiled/Image.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmaketiled/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmaketiled/makeTiled.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmaketiled/makeTiled.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmaketiled/namespaceAlias.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmanifest/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmanifest/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmetrics/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmetrics/exrmetrics.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmetrics/exrmetrics.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmetrics/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmultipart/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmultipart/exrmultipart.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmultiview/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmultiview/Image.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmultiview/Image.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmultiview/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmultiview/makeMultiView.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmultiview/makeMultiView.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrmultiview/namespaceAlias.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrstdattr/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/bin/exrstdattr/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/.gitignore +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/Iex.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexBaseExc.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexBaseExc.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexErrnoExc.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexExport.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexForward.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexMacros.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexMathExc.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexMathFloatExc.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexMathFloatExc.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexMathFpu.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexMathFpu.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexMathIeeeExc.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexNamespace.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexThrowErrnoExc.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/Iex/IexThrowErrnoExc.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThread.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThread.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThreadExport.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThreadForward.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThreadMutex.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThreadNamespace.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThreadPool.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThreadPool.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThreadProcessGroup.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThreadSemaphore.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThreadSemaphore.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThreadSemaphoreOSX.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThreadSemaphorePosix.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThreadSemaphorePosixCompat.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/IlmThread/IlmThreadSemaphoreWin32.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfAcesFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfAcesFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfArray.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfAutoArray.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfB44Compressor.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfB44Compressor.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfBoxAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfBoxAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfBytesAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfBytesAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfCRgbaFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfCRgbaFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfChannelList.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfChannelList.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfChannelListAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfChannelListAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfCheckedArithmetic.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfChromaticities.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfChromaticities.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfChromaticitiesAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfChromaticitiesAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfCompositeDeepScanLine.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfCompositeDeepScanLine.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfCompression.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfCompression.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfCompressionAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfCompressionAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfCompressor.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfCompressor.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfContext.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfContextInit.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfContextInit.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfConvert.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfConvert.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepCompositing.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepCompositing.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepFrameBuffer.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepFrameBuffer.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepImageState.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepImageStateAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepImageStateAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepScanLineInputFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepScanLineInputFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepScanLineInputPart.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepScanLineInputPart.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepScanLineOutputFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepScanLineOutputPart.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepScanLineOutputPart.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepTiledInputFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepTiledInputFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepTiledInputPart.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepTiledInputPart.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepTiledOutputFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepTiledOutputPart.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDeepTiledOutputPart.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDoubleAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDoubleAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDwaCompressor.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfDwaCompressor.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfEnvmap.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfEnvmap.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfEnvmapAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfEnvmapAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfExport.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfFastHuf.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfFastHuf.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfFloatAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfFloatAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfFloatVectorAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfFloatVectorAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfForward.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfFrameBuffer.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfFrameBuffer.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfFramesPerSecond.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfFramesPerSecond.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfGenericInputFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfGenericInputFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfGenericOutputFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfGenericOutputFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfHTCompressor.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfHTCompressor.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfHeader.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfHeader.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfHuf.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfHuf.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfIDManifest.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfIDManifest.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfIDManifestAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfIDManifestAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfIO.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfIO.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfInputFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfInputFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfInputPart.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfInputPart.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfInputPartData.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfInputPartData.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfInputStreamMutex.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfInt64.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfIntAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfIntAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfKeyCode.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfKeyCode.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfKeyCodeAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfKeyCodeAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfLineOrder.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfLineOrderAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfLineOrderAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfLut.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfLut.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfMatrixAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfMatrixAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfMisc.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfMisc.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfMultiPartInputFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfMultiPartInputFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfMultiPartOutputFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfMultiPartOutputFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfMultiView.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfMultiView.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfName.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfNamespace.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfOpaqueAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfOpaqueAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfOptimizedPixelReading.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfOutputFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfOutputFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfOutputPart.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfOutputPart.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfOutputPartData.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfOutputPartData.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfOutputStreamMutex.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfPartHelper.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfPartType.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfPartType.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfPixelType.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfPizCompressor.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfPizCompressor.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfPreviewImage.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfPreviewImage.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfPreviewImageAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfPreviewImageAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfPxr24Compressor.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfPxr24Compressor.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfRational.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfRational.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfRationalAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfRationalAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfRgba.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfRgbaFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfRgbaFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfRgbaYca.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfRgbaYca.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfRle.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfRle.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfRleCompressor.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfRleCompressor.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfScanLineInputFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfScanLineInputFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfSimd.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfStandardAttributes.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfStandardAttributes.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfStdIO.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfStdIO.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfStringAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfStringAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfStringVectorAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfStringVectorAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfSystemSpecific.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfSystemSpecific.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTestFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTestFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfThreading.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfThreading.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTileDescription.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTileDescriptionAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTileDescriptionAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTileOffsets.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTileOffsets.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTiledInputFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTiledInputFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTiledInputPart.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTiledInputPart.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTiledMisc.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTiledMisc.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTiledOutputFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTiledOutputFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTiledOutputPart.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTiledOutputPart.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTiledRgbaFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTiledRgbaFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTimeCode.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTimeCode.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTimeCodeAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfTimeCodeAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfVecAttribute.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfVecAttribute.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfVersion.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfVersion.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfWav.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfWav.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfXdr.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfZip.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfZip.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfZipCompressor.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/ImfZipCompressor.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXR/dwaLookups.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/attributes.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/backward_compatibility.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/base.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/bytes.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/channel_list.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/coding.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/compression.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/context.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/debug.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/decoding.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/encoding.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/float_vector.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_attr.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_b44_table.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_b44_table_init.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_bytes.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_channel_list.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_coding.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_compress.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_constants.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_cpuid.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_decompress.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_dwa.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_dwa_channeldata.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_dwa_classifier.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_dwa_encoder.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_dwa_helpers.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_dwa_simd.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_dwa_table.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_dwa_table_init.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_file.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_float_vector.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_ht.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_ht_common.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_ht_common.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_huf.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_huf.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_memory.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_opaque.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_piz.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_posix_file_impl.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_preview.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_pxr24.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_rle.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_string.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_string_vector.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_thread.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_win32_file_impl.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_xdr.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/internal_zip.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/memory.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/opaque.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr_attr.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr_base.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr_coding.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr_compression.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr_config.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr_context.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr_debug.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr_decode.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr_encode.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr_errors.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr_part.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/openexr_std_attr.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/pack.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/part.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/preview.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/std_attr.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/string.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/string_vector.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/unpack.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRCore/write_header.c +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfCheckFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfCheckFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfDeepImage.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfDeepImage.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfDeepImageChannel.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfDeepImageChannel.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfDeepImageIO.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfDeepImageIO.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfDeepImageLevel.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfDeepImageLevel.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfFlatImage.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfFlatImage.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfFlatImageChannel.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfFlatImageChannel.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfFlatImageIO.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfFlatImageIO.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfFlatImageLevel.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfFlatImageLevel.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfImage.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfImage.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfImageChannel.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfImageChannel.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfImageChannelRenaming.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfImageDataWindow.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfImageDataWindow.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfImageIO.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfImageIO.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfImageLevel.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfImageLevel.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfSampleCountChannel.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfSampleCountChannel.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/ImfUtilExport.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/lib/OpenEXRUtil/README +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/IexTest/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/IexTest/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/IexTest/mathFuncs.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/IexTest/mathFuncs.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/IexTest/testBaseExc.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/IexTest/testBaseExc.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/IexTest/testMathExc.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/IexTest/testMathExc.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/base_units.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/base_units.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/buffer.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/buffer.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/compression.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/compression.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/compressionTables.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/deep.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/dwaLookups.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/dwaQuantTables.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/general_attr.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/general_attr.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/performance.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/read.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/test_value.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRCoreTest/write.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/fuzzFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/fuzzFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/oss-fuzz/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/oss-fuzz/openexr_exrcheck_fuzzer.cc +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/oss-fuzz/openexr_exrcorecheck_fuzzer.cc +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/oss-fuzz/test_build.sh +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/testFuzzDeepScanLines.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/testFuzzDeepScanLines.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/testFuzzDeepTiles.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/testFuzzDeepTiles.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/testFuzzScanLines.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/testFuzzScanLines.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/testFuzzTiles.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRFuzzTest/testFuzzTiles.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/TestUtilFStream.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/bswap_32.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_b44.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_b44_piz.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_bad_bounds_piz.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_bad_neg_bounds_pxr24.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_bad_pos_bounds_piz.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_bad_pos_bounds_pxr24.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_dwaa_piz.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_dwaa_v1.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_dwaa_v2.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_dwab_piz.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_dwab_v1.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_dwab_v2.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_early_eof_piz.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_invalid_unknown.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_none.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_piz.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_rle.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_short_decode_piz.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_zip.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/comp_zips.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/compareB44.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/compareB44.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/compareDwa.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/compareDwa.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/compareFloat.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/compareFloat.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/invalid.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/invalid_shared_attrs_multipart.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/lineOrder_decreasing.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/lineOrder_increasing.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/random.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/random.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/scanline_with_deepscanline_type.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/scanline_with_deeptiled_type.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/scanline_with_tiledimage_type.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testAttributes.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testAttributes.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testBackwardCompatibility.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testBackwardCompatibility.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testBadTypeAttributes.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testBadTypeAttributes.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCRgba.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCRgba.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testChannels.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testChannels.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCompositeDeepScanLine.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCompositeDeepScanLine.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCompression.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCompression.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCompressionApi.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCompressionApi.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testConversion.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testConversion.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCopyDeepScanLine.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCopyDeepScanLine.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCopyDeepTiled.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCopyDeepTiled.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCopyMultiPartFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCopyMultiPartFile.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCopyPixels.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCopyPixels.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCpuId.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCpuId.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCustomAttributes.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testCustomAttributes.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testDeepScanLineBasic.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testDeepScanLineBasic.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testDeepScanLineHuge.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testDeepScanLineHuge.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testDeepScanLineMultipleRead.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testDeepScanLineMultipleRead.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testDeepTiledBasic.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testExistingStreams.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testExistingStreams.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testFutureProofing.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testFutureProofing.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testHeader.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testHuf.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testHuf.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testIDManifest.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testIDManifest.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testInputPart.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testInputPart.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testIsComplete.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testIsComplete.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testLargeDataWindowOffsets.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testLargeDataWindowOffsets.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testLineOrder.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testLineOrder.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testLut.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testLut.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMagic.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMagic.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMalformedImages.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMalformedImages.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMultiPartApi.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMultiPartApi.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMultiPartFileMixingBasic.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMultiPartFileMixingBasic.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMultiPartSharedAttributes.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMultiPartSharedAttributes.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMultiPartThreading.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMultiPartThreading.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMultiScanlinePartThreading.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMultiScanlinePartThreading.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMultiTiledPartThreading.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMultiTiledPartThreading.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMultiView.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testMultiView.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testNativeFormat.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testNativeFormat.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testOptimizedInterleavePatterns.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testOptimizedInterleavePatterns.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testPartHelper.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testPartHelper.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testPreviewImage.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testPreviewImage.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testRgba.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testRgba.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testRgbaThreading.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testRgbaThreading.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testRle.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testRle.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testSampleImages.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testSampleImages.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testScanLineApi.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testScanLineApi.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testSharedFrameBuffer.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testSharedFrameBuffer.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testStandardAttributes.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testStandardAttributes.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testTiledCompression.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testTiledCompression.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testTiledCopyPixels.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testTiledCopyPixels.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testTiledLineOrder.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testTiledLineOrder.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testTiledRgba.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testTiledRgba.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testTiledYa.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testTiledYa.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testWav.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testWav.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testXdr.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testXdr.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testYca.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/testYca.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/test_native1.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/test_native2.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/tiled.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/tiled_with_deepscanline_type.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/tiled_with_deeptile_type.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/tiled_with_scanlineimage_type.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/tmpDir.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/v1.7.test.1.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/v1.7.test.interleaved.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/v1.7.test.planar.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRTest/v1.7.test.tiled.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRUtilTest/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRUtilTest/main.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRUtilTest/testDeepImage.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRUtilTest/testDeepImage.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRUtilTest/testFlatImage.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRUtilTest/testFlatImage.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRUtilTest/testIO.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRUtilTest/testIO.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRUtilTest/testImageChannel.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/OpenEXRUtilTest/testImageChannel.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/add_subdirectory/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/do_run.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_exr2aces.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_exrcheck.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_exrenvmap.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_exrheader.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_exrinfo.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_exrmakepreview.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_exrmaketiled.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_exrmanifest.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_exrmetrics.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_exrmultipart.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_exrmultiview.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_exrstdattr.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/11.deep.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/11.deep.exr.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/42.deep.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/42.deep.exr.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/64.deep.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/64.deep.exr.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/Flowers.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/GammaChart.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/GrayRampsHorizontal.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/WavyLinesCube.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/WavyLinesLatLong.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/multipart.0001.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/multivariate.deep.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/multivariate.deep.exr.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/objectid.deep.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/bin/test_images/objectid.deep.exr.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/oss-fuzz/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/oss-fuzz/openexr_exrcheck_fuzzer.cc +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/oss-fuzz/openexr_exrcorecheck_fuzzer.cc +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/test/oss-fuzz/test_build.sh +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/Imath.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/PyOpenEXR.h +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/README.md +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/openexr_skbuild_plugin.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/tests/test.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/tests/test_deep.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/tests/test_exceptions.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/tests/test_images.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/tests/test_import.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/tests/test_minimal.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/tests/test_old.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/tests/test_readme.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/tests/test_unittest.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/src/wrappers/python/tests/unfinished_multipart.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/API.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/DeepIDsSpecification.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/Doxyfile.in +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/HelloWorld.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/InterpretingDeepPixels.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/MultiViewOpenEXR.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/OpenEXRCoreAPI.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/OpenEXRFileLayout.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/PortingGuide.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/ReadingAndWritingImageFiles.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/SceneLinear.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/StandardAttributes.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/SymbolVisibility.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/TechnicalIntroduction.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/TheoryDeepPixels.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/_templates/layout.html +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/about.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/bin/exr2aces.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/bin/exrcheck.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/bin/exrenvmap.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/bin/exrheader.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/bin/exrinfo.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/bin/exrmakepreview.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/bin/exrmaketiled.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/bin/exrmanifest.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/bin/exrmetrics.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/bin/exrmultipart.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/bin/exrmultiview.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/bin/exrstdattr.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/concepts.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/conf.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/downloads/sample.exr +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/imageprocessing.dot +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/InterpretingDeepPixels1.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/InterpretingDeepPixels2.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/InterpretingDeepPixels3.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/OpenEXR_Reel_2020.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/cubeMap.big.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/cubeMap.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/drawing.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/envcube.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/imageprocessing.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/latlong.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/latlongMap.big.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/latlongMap.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/mapped.jpg +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/news.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/openexr-fav.ico +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/openexr-horizontal-color.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/openexr-logo.jpg +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/openexr-stacked-color.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/raw.jpg +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/screenwin.big.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/screenwin.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/stripes.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/tiles.big.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/tiles.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/twosamples.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/windowExample1.big.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/windowExample1.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/windowExample1.small.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/windowExample2.big.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/images/windowExample2.png +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/index.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/install.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/latest_news_title.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/license.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/news.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/python.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/requirements-lock.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/requirements.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/scripts/install_doxygen.sh +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/scripts/test_images.py +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/C_IStream.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/C_IStream_clear.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/C_IStream_read.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/C_IStream_seekg.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/C_IStream_tellg.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/IStream.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/MemoryMappedIStream.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/MemoryMappedIStream_constructor.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/MemoryMappedIStream_destructor.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/MemoryMappedIStream_isMemoryMapped.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/MemoryMappedIStream_read.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/MemoryMappedIStream_readMemoryMapped.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/all.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/compression.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/envmap.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/exrreader/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/exrreader/build.sh +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/exrreader/exrreader.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/exrreader_max/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/exrreader_max/exrreader_max.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/exrwriter/CMakeLists.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/exrwriter/build.sh +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/exrwriter/exrwriter.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/exrwriter/stripes.exrinfo.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/mergeOverlappingSamples.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/multithreading.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/previewImageExamples.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/readChannelsAndLayers.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/readDeepScanLineFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/readDeepTiledFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/readGZ1.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/readGZ2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/readHeader.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/readRgba1.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/readRgba2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/readRgbaFILE.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/readTiled1.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/readTiledRgba1.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/splitVolumeSample.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/structDefinitions.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/tileDescription.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/validExrFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeDeepScanLineFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeDeepTiledFile.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeGZ1.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeGZ2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeRgba1.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeRgba2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeRgba3.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeRgbaMT.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeRgbaWithPreview1.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeRgbaWithPreview2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeTiled1.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeTiledRgbaMIP1.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeTiledRgbaMIP2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeTiledRgbaONE1.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeTiledRgbaONE2.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/src/writeTiledRgbaRIP1.cpp +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/multipart.0001.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/multipart.0002.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/multipart.0003.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/multipart.0004.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/multipart.0005.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/multipart.0006.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/multipart.0007.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/multipart.0008.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/singlepart.0001.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/singlepart.0002.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/singlepart.0003.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/singlepart.0004.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/singlepart.0005.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/singlepart.0006.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/singlepart.0007.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Beachball/singlepart.0008.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Chromaticities/Rec709.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Chromaticities/Rec709_YC.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Chromaticities/XYZ.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Chromaticities/XYZ_YC.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t01.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t02.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t03.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t04.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t05.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t06.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t07.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t08.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t09.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t10.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t11.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t12.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t13.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t14.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t15.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/DisplayWindow/t16.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/LuminanceChroma/CrissyField.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/LuminanceChroma/Flowers.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/LuminanceChroma/Garden.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/LuminanceChroma/MtTamNorth.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/LuminanceChroma/StarField.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiResolution/Bonita.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiResolution/ColorCodedLevels.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiResolution/Kapaa.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiResolution/KernerEnvCube.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiResolution/KernerEnvLatLong.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiResolution/MirrorPattern.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiResolution/OrientationCube.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiResolution/OrientationLatLong.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiResolution/PeriodicPattern.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiResolution/StageEnvCube.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiResolution/StageEnvLatLong.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiResolution/WavyLinesCube.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiResolution/WavyLinesLatLong.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiResolution/WavyLinesSphere.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiView/Adjuster.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiView/Balls.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiView/Fog.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiView/Impact.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/MultiView/LosPadres.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/ScanLines/Blobbies.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/ScanLines/CandleGlass.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/ScanLines/Cannon.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/ScanLines/Carrots.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/ScanLines/Desk.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/ScanLines/MtTamWest.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/ScanLines/PrismsLenses.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/ScanLines/StillLife.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/ScanLines/Tree.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/TestImages/AllHalfValues.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/TestImages/BrightRings.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/TestImages/BrightRingsNanInf.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/TestImages/GammaChart.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/TestImages/GrayRampsDiagonal.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/TestImages/GrayRampsHorizontal.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/TestImages/RgbRampsDiagonal.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/TestImages/SquaresSwirls.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/TestImages/WideColorGamut.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/TestImages/WideFloatRange.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Tiles/GoldenGate.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Tiles/Ocean.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/Tiles/Spirals.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/index.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/toctree.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/v2/LeftView/Balls.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/v2/LeftView/Ground.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/v2/LeftView/Leaves.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/v2/LeftView/Trunks.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/v2/LowResLeftView/Balls.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/v2/LowResLeftView/Ground.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/v2/LowResLeftView/Leaves.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/v2/LowResLeftView/Trunks.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/v2/LowResLeftView/composited.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/v2/Stereo/Balls.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/v2/Stereo/Ground.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/v2/Stereo/Leaves.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/v2/Stereo/Trunks.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images/v2/Stereo/composited.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/test_images.txt +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/toc_redirect.rst +0 -0
- {openexr-3.4.16 → openexr-3.4.17}/website/tools.rst +0 -0
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
# OpenEXR Release Notes
|
|
5
5
|
|
|
6
|
+
* [Version 3.4.17](#version-3417-october-30-2026) October 30 2026
|
|
6
7
|
* [Version 3.4.16](#version-3416-september-28-2026) September 28, 2026
|
|
7
8
|
* [Version 3.4.15](#version-3415-august-21-2026) August 21, 2026
|
|
8
9
|
* [Version 3.4.14](#version-3414-august-6-2026) August 6, 2026
|
|
@@ -108,6 +109,62 @@
|
|
|
108
109
|
* [Version 1.0.1](#version-101)
|
|
109
110
|
* [Version 1.0](#version-10)
|
|
110
111
|
|
|
112
|
+
## Version 3.4.17 (October 30, 2026)
|
|
113
|
+
|
|
114
|
+
Patch release that addresses the following security vulnerabilities:
|
|
115
|
+
|
|
116
|
+
* ***CVE Pending*** ([GHSA-WHF5-29MJ-GP53](https://github.com/AcademySoftwareFoundation/openexr/security/advisories/GHSA-WHF5-29MJ-GP53)) Heap Out-of-Bounds Write via Signed Integer Overflow in DWAA/DWAB `LossyDctDecoder`
|
|
117
|
+
* ***CVE Pending*** ([GHSA-VP77-HHRC-M2C3](https://github.com/AcademySoftwareFoundation/openexr/security/advisories/GHSA-VP77-HHRC-M2C3)) Subsampled chunk-height miscount: heap overflow in B44 encoder, NULL dereference in DWA decoder/encoder
|
|
118
|
+
* ***CVE Pending*** ([GHSA-RXWG-X3WX-PGFH](https://github.com/AcademySoftwareFoundation/openexr/security/advisories/GHSA-RXWG-X3WX-PGFH)) Heap out-of-bounds write via 32-bit tile-area integer overflow in `DeepTiledOutputFile` (deep-image re-save path) — possible incomplete fix of PR #939
|
|
119
|
+
* ***CVE Pending*** ([GHSA-RJG8-982X-JHC2](https://github.com/AcademySoftwareFoundation/openexr/security/advisories/GHSA-RJG8-982X-JHC2)) Uninitialized Heap Memory Disclosure in DWA Decompression via Short zlib Stream Mapped to Success
|
|
120
|
+
* ***CVE Pending*** ([GHSA-J76P-H7GW-VMPF](https://github.com/AcademySoftwareFoundation/openexr/security/advisories/GHSA-J76P-H7GW-VMPF)) Heap buffer overflow in the OpenEXR Python bindings when two RGB channel groups coalesce to the same key
|
|
121
|
+
* ***CVE Pending*** ([GHSA-G248-596F-9995](https://github.com/AcademySoftwareFoundation/openexr/security/advisories/GHSA-G248-596F-9995)) Unvalidated extra `chlist` header attributes merged into `Header::channels()` cause a heap overflow in `run_fill`
|
|
122
|
+
* ***CVE Pending*** ([GHSA-FRX8-5P4H-J8M7](https://github.com/AcademySoftwareFoundation/openexr/security/advisories/GHSA-FRX8-5P4H-J8M7)) Heap OOB Write via Integer Overflow in B44 Chunk Unpacked-Size Computation — Remote Code Execution in OpenEXRCore
|
|
123
|
+
* ***CVE Pending*** ([GHSA-638X-X7MR-89XC](https://github.com/AcademySoftwareFoundation/openexr/security/advisories/GHSA-638X-X7MR-89XC)) Out-of-bounds write at an attacker-chosen displacement in legacy Python `InputFile.channel()`
|
|
124
|
+
* ***CVE Pending*** ([GHSA-3CP4-779M-H837](https://github.com/AcademySoftwareFoundation/openexr/security/advisories/GHSA-3CP4-779M-H837)) Use-after-free in OpenEXRCore `exr_copy_unset_attributes()` when a channel name exceeds 31 bytes
|
|
125
|
+
|
|
126
|
+
This version also addresses a regression introduced in v3.4.14 in
|
|
127
|
+
reading deep images on big-endian hosts, due to a byte-order bug in
|
|
128
|
+
the deep sample count table. Little-endian hosts are unaffected.
|
|
129
|
+
|
|
130
|
+
### Merged Pull Requests
|
|
131
|
+
|
|
132
|
+
* [2787](https://github.com/AcademySoftwareFoundation/openexr/pull/2787)
|
|
133
|
+
Fix byte-swapped deep sample count table on big-endian hosts (by @cary-ilm/Cary Phillips)
|
|
134
|
+
* [2762](https://github.com/AcademySoftwareFoundation/openexr/pull/2762)
|
|
135
|
+
Fix compute_sampled_height() for chunks with no sampled row (by @cary-ilm/Cary Phillips)
|
|
136
|
+
* [2760](https://github.com/AcademySoftwareFoundation/openexr/pull/2760)
|
|
137
|
+
Fix dangling channels pointer in exr_copy_unset_attributes() (by @cary-ilm/Cary Phillips)
|
|
138
|
+
* [2757](https://github.com/AcademySoftwareFoundation/openexr/pull/2757)
|
|
139
|
+
Fix unsigned wraparound in legacy Python InputFile.channel() (by @cary-ilm/Cary Phillips)
|
|
140
|
+
* [2749](https://github.com/AcademySoftwareFoundation/openexr/pull/2749)
|
|
141
|
+
Use size_t block indexing in DWA lossy DCT decoder (by @cary-ilm/Cary Phillips)
|
|
142
|
+
* [2748](https://github.com/AcademySoftwareFoundation/openexr/pull/2748)
|
|
143
|
+
Fix tile area overflow in DeepTiledOutputFile::initialize (by @cary-ilm/Cary Phillips)
|
|
144
|
+
* [2747](https://github.com/AcademySoftwareFoundation/openexr/pull/2747)
|
|
145
|
+
Reject Python RGB channel groups that coalesce to the same key (by @cary-ilm/Cary Phillips)
|
|
146
|
+
* [2745](https://github.com/AcademySoftwareFoundation/openexr/pull/2745)
|
|
147
|
+
Only merge the "channels" chlist attribute into Header::channels() (by @cary-ilm/Cary Phillips)
|
|
148
|
+
* [2744](https://github.com/AcademySoftwareFoundation/openexr/pull/2744)
|
|
149
|
+
Grow the part table geometrically when adding parts (by @cary-ilm/Cary Phillips)
|
|
150
|
+
* [2726](https://github.com/AcademySoftwareFoundation/openexr/pull/2726)
|
|
151
|
+
Fix heap OOB read in deep PIZ encoder path (by @kalt2212/Kalt2212)
|
|
152
|
+
* [2718](https://github.com/AcademySoftwareFoundation/openexr/pull/2718)
|
|
153
|
+
Fix B44 integer overflow OOB write (by @cary-ilm/Cary Phillips)
|
|
154
|
+
* [2717](https://github.com/AcademySoftwareFoundation/openexr/pull/2717)
|
|
155
|
+
Fix DWA uninitialized heap memory disclosure (by @cary-ilm/Cary Phillips)
|
|
156
|
+
|
|
157
|
+
### Merged Workflow Pull Requests
|
|
158
|
+
|
|
159
|
+
* [2731](https://github.com/AcademySoftwareFoundation/openexr/pull/2731)
|
|
160
|
+
Bump actions/upload-artifact from 7.0.1 to 7.0.2 (by @app/dependabot)
|
|
161
|
+
* [2711](https://github.com/AcademySoftwareFoundation/openexr/pull/2711)
|
|
162
|
+
Bump vmactions/freebsd-vm from 1.5.8 to 1.5.9 (by @app/dependabot)
|
|
163
|
+
* [2703](https://github.com/AcademySoftwareFoundation/openexr/pull/2703)
|
|
164
|
+
Strip Contributors from notes in slack release post (by @cary-ilm/Cary Phillips)
|
|
165
|
+
* [2692](https://github.com/AcademySoftwareFoundation/openexr/pull/2692)
|
|
166
|
+
Bump jmertic/slack-release-notifier from 20260820 to 20260930 (by @app/dependabot)
|
|
167
|
+
|
|
111
168
|
## Version 3.4.16 (September 28, 2026)
|
|
112
169
|
|
|
113
170
|
v3.4.16 fixes a bug which created unreadable DWAB files in certain circumstances.
|
|
@@ -499,7 +499,12 @@ Context::header (int partidx) const
|
|
|
499
499
|
break;
|
|
500
500
|
|
|
501
501
|
case EXR_ATTR_CHLIST: {
|
|
502
|
-
|
|
502
|
+
// Only the attribute named "channels" is validated by the
|
|
503
|
+
// core library and describes the pixel data; any other
|
|
504
|
+
// chlist attribute is kept as an ordinary attribute.
|
|
505
|
+
const bool isChannels = !strcmp (cur->name, "channels");
|
|
506
|
+
ChannelList other;
|
|
507
|
+
ChannelList& chans = isChannels ? hdr.channels () : other;
|
|
503
508
|
|
|
504
509
|
for (int c = 0; c < cur->chlist->num_channels; ++c)
|
|
505
510
|
{
|
|
@@ -513,6 +518,9 @@ Context::header (int partidx) const
|
|
|
513
518
|
curc.y_sampling,
|
|
514
519
|
curc.p_linear != 0));
|
|
515
520
|
}
|
|
521
|
+
|
|
522
|
+
if (!isChannels)
|
|
523
|
+
hdr.insert (cur->name, ChannelListAttribute (other));
|
|
516
524
|
break;
|
|
517
525
|
}
|
|
518
526
|
|
|
@@ -923,6 +923,15 @@ DeepScanLineOutputFile::initialize (const Header& header)
|
|
|
923
923
|
|
|
924
924
|
_data->header.setType (DEEPSCANLINE);
|
|
925
925
|
|
|
926
|
+
//
|
|
927
|
+
// header.sanityCheck() runs before the type is stamped above, so the
|
|
928
|
+
// deep-data compression restriction is never applied there. Reject any
|
|
929
|
+
// compression that is not valid for deep data explicitly.
|
|
930
|
+
//
|
|
931
|
+
if (!isValidDeepCompression (_data->header.compression ()))
|
|
932
|
+
throw IEX_NAMESPACE::ArgExc (
|
|
933
|
+
"Compression type in header not valid for deep data");
|
|
934
|
+
|
|
926
935
|
const Box2i& dataWindow = header.dataWindow ();
|
|
927
936
|
|
|
928
937
|
_data->currentScanLine = (header.lineOrder () == INCREASING_Y)
|
|
@@ -1182,6 +1182,16 @@ DeepTiledOutputFile::initialize (const Header& header)
|
|
|
1182
1182
|
{
|
|
1183
1183
|
_data->header = header;
|
|
1184
1184
|
_data->header.setType (DEEPTILE);
|
|
1185
|
+
|
|
1186
|
+
//
|
|
1187
|
+
// header.sanityCheck() runs before the type is stamped above, so the
|
|
1188
|
+
// deep-data compression restriction is never applied there. Reject any
|
|
1189
|
+
// compression that is not valid for deep data explicitly.
|
|
1190
|
+
//
|
|
1191
|
+
if (!isValidDeepCompression (_data->header.compression ()))
|
|
1192
|
+
throw IEX_NAMESPACE::ArgExc (
|
|
1193
|
+
"Compression type in header not valid for deep data");
|
|
1194
|
+
|
|
1185
1195
|
_data->lineOrder = _data->header.lineOrder ();
|
|
1186
1196
|
|
|
1187
1197
|
//
|
|
@@ -1200,22 +1210,25 @@ DeepTiledOutputFile::initialize (const Header& header)
|
|
|
1200
1210
|
_data->minY = dataWindow.min.y;
|
|
1201
1211
|
_data->maxY = dataWindow.max.y;
|
|
1202
1212
|
|
|
1203
|
-
|
|
1204
|
-
|
|
1213
|
+
// widen before multiplying: the 32-bit product of the tile
|
|
1214
|
+
// dimensions can wrap to 0 and bypass the limit below
|
|
1215
|
+
const uint64_t tileArea = static_cast<uint64_t> (_data->tileDesc.ySize) *
|
|
1216
|
+
static_cast<uint64_t> (_data->tileDesc.xSize);
|
|
1205
1217
|
|
|
1206
1218
|
//
|
|
1207
1219
|
// impose limit of 2^32 bytes of storage for maxSampleCountTableSize
|
|
1208
1220
|
// (disallow files with very large tile areas that would otherwise cause excessive memory allocation)
|
|
1209
1221
|
//
|
|
1210
1222
|
|
|
1211
|
-
if (
|
|
1212
|
-
std::numeric_limits<unsigned int>::max ())
|
|
1223
|
+
if (tileArea > std::numeric_limits<unsigned int>::max () / sizeof (int))
|
|
1213
1224
|
{
|
|
1214
1225
|
THROW (
|
|
1215
1226
|
IEX_NAMESPACE::ArgExc,
|
|
1216
1227
|
"Deep tile size exceeds maximum permitted area");
|
|
1217
1228
|
}
|
|
1218
1229
|
|
|
1230
|
+
_data->maxSampleCountTableSize = tileArea * sizeof (int);
|
|
1231
|
+
|
|
1219
1232
|
//
|
|
1220
1233
|
// Precompute level and tile information to speed up utility functions
|
|
1221
1234
|
//
|
|
@@ -1651,12 +1651,11 @@ exr_read_deep_chunk (
|
|
|
1651
1651
|
|
|
1652
1652
|
if (rv != EXR_ERR_SUCCESS) return rv;
|
|
1653
1653
|
|
|
1654
|
-
/*
|
|
1655
|
-
*
|
|
1656
|
-
|
|
1657
|
-
|
|
1658
|
-
|
|
1659
|
-
(int) (cinfo->sample_count_table_size / sizeof (uint32_t)));
|
|
1654
|
+
/* Both buffers are returned exactly as stored in the file, like
|
|
1655
|
+
* exr_read_chunk: the sample count table may be compressed, and when
|
|
1656
|
+
* it isn't, its counts are little-endian. The decode pipeline
|
|
1657
|
+
* (unpack_sample_table) does the conversion to native order, and the
|
|
1658
|
+
* raw chunk readers in the C++ API copy these bytes verbatim. */
|
|
1660
1659
|
|
|
1661
1660
|
if (packed_data && cinfo->packed_size > 0)
|
|
1662
1661
|
{
|
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
#include "internal_decompress.h"
|
|
8
8
|
|
|
9
9
|
#include "internal_coding.h"
|
|
10
|
+
#include "internal_util.h"
|
|
10
11
|
#include "internal_xdr.h"
|
|
11
12
|
|
|
12
13
|
#include <string.h>
|
|
@@ -676,8 +677,14 @@ compute_scratch_buffer_size (
|
|
|
676
677
|
if (nx % 4) nx += 4 - nx % 4;
|
|
677
678
|
if (ny % 4) ny += 4 - ny % 4;
|
|
678
679
|
|
|
679
|
-
|
|
680
|
-
|
|
680
|
+
/* guard against a wrapped accumulation producing an
|
|
681
|
+
* implausibly small scratch requirement relative to what the
|
|
682
|
+
* decompressor will actually touch (see GHSA-frx8-5p4h-j8m7) */
|
|
683
|
+
if (checked_mul_accum_u64 (
|
|
684
|
+
&comp,
|
|
685
|
+
(uint64_t) ny * (uint64_t) nx,
|
|
686
|
+
(uint64_t) curc->bytes_per_element))
|
|
687
|
+
return UINT64_MAX;
|
|
681
688
|
}
|
|
682
689
|
if (comp > ret) ret = comp;
|
|
683
690
|
return ret;
|
|
@@ -695,7 +702,8 @@ internal_exr_undo_b44 (
|
|
|
695
702
|
{
|
|
696
703
|
exr_result_t rv;
|
|
697
704
|
uint64_t scratch_sz = compute_scratch_buffer_size (decode, uncompressed_size);
|
|
698
|
-
if (scratch_sz != (size_t) scratch_sz)
|
|
705
|
+
if (scratch_sz == UINT64_MAX || scratch_sz != (size_t) scratch_sz)
|
|
706
|
+
return EXR_ERR_OUT_OF_MEMORY;
|
|
699
707
|
rv = internal_decode_alloc_buffer (
|
|
700
708
|
decode,
|
|
701
709
|
EXR_TRANSCODE_BUFFER_SCRATCH1,
|
|
@@ -724,7 +732,8 @@ internal_exr_undo_b44a (
|
|
|
724
732
|
{
|
|
725
733
|
exr_result_t rv;
|
|
726
734
|
uint64_t scratch_sz = compute_scratch_buffer_size (decode, uncompressed_size);
|
|
727
|
-
if (scratch_sz != (size_t) scratch_sz)
|
|
735
|
+
if (scratch_sz == UINT64_MAX || scratch_sz != (size_t) scratch_sz)
|
|
736
|
+
return EXR_ERR_OUT_OF_MEMORY;
|
|
728
737
|
rv = internal_decode_alloc_buffer (
|
|
729
738
|
decode,
|
|
730
739
|
EXR_TRANSCODE_BUFFER_SCRATCH1,
|
|
@@ -916,6 +916,8 @@ DwaCompressor_uncompress (
|
|
|
916
916
|
|
|
917
917
|
if (unknownCompressedSize > 0)
|
|
918
918
|
{
|
|
919
|
+
size_t unknownActualOut;
|
|
920
|
+
|
|
919
921
|
if (unknownUncompressedSize > me->_planarUncBufferSize[UNKNOWN])
|
|
920
922
|
{
|
|
921
923
|
return EXR_ERR_CORRUPT_CHUNK;
|
|
@@ -927,7 +929,18 @@ DwaCompressor_uncompress (
|
|
|
927
929
|
unknownCompressedSize,
|
|
928
930
|
me->_planarUncBuffer[UNKNOWN],
|
|
929
931
|
unknownUncompressedSize,
|
|
930
|
-
|
|
932
|
+
&unknownActualOut))
|
|
933
|
+
{
|
|
934
|
+
return EXR_ERR_CORRUPT_CHUNK;
|
|
935
|
+
}
|
|
936
|
+
|
|
937
|
+
/* A short zlib stream (fewer bytes produced than requested) is
|
|
938
|
+
* reported as success (see translate_deflate_result), leaving
|
|
939
|
+
* the tail of _planarUncBuffer[UNKNOWN] filled with stale heap
|
|
940
|
+
* contents that are then copied into the decoded image. Reject
|
|
941
|
+
* it explicitly instead of trusting the full buffer was written
|
|
942
|
+
* (see GHSA-rjg8-982x-jhc2). */
|
|
943
|
+
if (unknownActualOut != unknownUncompressedSize)
|
|
931
944
|
{
|
|
932
945
|
return EXR_ERR_CORRUPT_CHUNK;
|
|
933
946
|
}
|
|
@@ -292,8 +292,8 @@ LossyDctDecoder_execute (
|
|
|
292
292
|
int numComp = d->_channel_decode_data_count;
|
|
293
293
|
DctCoderChannelData* chanData[3];
|
|
294
294
|
int lastNonZero = 0;
|
|
295
|
-
int numBlocksX = (d->_width + 7) / 8;
|
|
296
|
-
int numBlocksY = (d->_height + 7) / 8;
|
|
295
|
+
int numBlocksX = (int) (((int64_t) d->_width + 7) / 8);
|
|
296
|
+
int numBlocksY = (int) (((int64_t) d->_height + 7) / 8);
|
|
297
297
|
int leftoverX = d->_width - (numBlocksX - 1) * 8;
|
|
298
298
|
int leftoverY = d->_height - (numBlocksY - 1) * 8;
|
|
299
299
|
|
|
@@ -320,9 +320,15 @@ LossyDctDecoder_execute (
|
|
|
320
320
|
// Allocate a temp aligned buffer to hold a rows worth of full
|
|
321
321
|
// 8x8 half-float blocks
|
|
322
322
|
//
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
323
|
+
// (computed in 64 bits: with a 32-bit size_t the product can wrap
|
|
324
|
+
// and under-allocate for very wide chunks)
|
|
325
|
+
//
|
|
326
|
+
uint64_t rowBlockBytes = (uint64_t) numComp * (uint64_t) numBlocksX * 64 *
|
|
327
|
+
sizeof (uint16_t) +
|
|
328
|
+
_SSE_ALIGNMENT;
|
|
329
|
+
if (rowBlockBytes > SIZE_MAX) return EXR_ERR_OUT_OF_MEMORY;
|
|
330
|
+
|
|
331
|
+
rowBlockHandle = alloc_fn ((size_t) rowBlockBytes);
|
|
326
332
|
if (!rowBlockHandle) return EXR_ERR_OUT_OF_MEMORY;
|
|
327
333
|
|
|
328
334
|
rowBlock[0] = (uint16_t*) simd_align_pointer (rowBlockHandle);
|
|
@@ -513,13 +519,13 @@ LossyDctDecoder_execute (
|
|
|
513
519
|
if (!blockIsConstant)
|
|
514
520
|
{
|
|
515
521
|
(*convertFloatToHalf64) (
|
|
516
|
-
&rowBlock[comp][blockx * 64], chanData[comp]->_dctData);
|
|
522
|
+
&rowBlock[comp][(uint64_t) blockx * 64], chanData[comp]->_dctData);
|
|
517
523
|
}
|
|
518
524
|
else
|
|
519
525
|
{
|
|
520
526
|
#ifdef IMF_HAVE_SSE2
|
|
521
527
|
|
|
522
|
-
__m128i* dst = (__m128i*) &rowBlock[comp][blockx * 64];
|
|
528
|
+
__m128i* dst = (__m128i*) &rowBlock[comp][(uint64_t) blockx * 64];
|
|
523
529
|
|
|
524
530
|
dst[0] = _mm_set1_epi16 (
|
|
525
531
|
(short) float_to_half (chanData[comp]->_dctData[0]));
|
|
@@ -534,7 +540,7 @@ LossyDctDecoder_execute (
|
|
|
534
540
|
|
|
535
541
|
#else /* IMF_HAVE_SSE2 */
|
|
536
542
|
|
|
537
|
-
uint16_t* dst = &rowBlock[comp][blockx * 64];
|
|
543
|
+
uint16_t* dst = &rowBlock[comp][(uint64_t) blockx * 64];
|
|
538
544
|
|
|
539
545
|
dst[0] = float_to_half (chanData[comp]->_dctData[0]);
|
|
540
546
|
|
|
@@ -661,7 +667,7 @@ LossyDctDecoder_execute (
|
|
|
661
667
|
for (int blockx = 0; blockx < numFullBlocksX; ++blockx)
|
|
662
668
|
{
|
|
663
669
|
uint16_t* restrict src =
|
|
664
|
-
&rowBlock[comp][blockx * 64 + ((y & 0x7) * 8)];
|
|
670
|
+
&rowBlock[comp][(uint64_t) blockx * 64 + ((y & 0x7) * 8)];
|
|
665
671
|
|
|
666
672
|
dst[0] = d->_toLinear[src[0]];
|
|
667
673
|
dst[1] = d->_toLinear[src[1]];
|
|
@@ -687,7 +693,7 @@ LossyDctDecoder_execute (
|
|
|
687
693
|
for (int blockx = 0; blockx < numFullBlocksX; ++blockx)
|
|
688
694
|
{
|
|
689
695
|
uint16_t* src =
|
|
690
|
-
&rowBlock[comp][blockx * 64 + ((y & 0x7) * 8)];
|
|
696
|
+
&rowBlock[comp][(uint64_t) blockx * 64 + ((y & 0x7) * 8)];
|
|
691
697
|
memcpy (dst, src, 8*sizeof(uint16_t));
|
|
692
698
|
dst += 8;
|
|
693
699
|
}
|
|
@@ -706,7 +712,7 @@ LossyDctDecoder_execute (
|
|
|
706
712
|
for (int y = 8 * blocky; y < 8 * blocky + maxY; ++y)
|
|
707
713
|
{
|
|
708
714
|
uint16_t* src = (uint16_t*) &rowBlock[comp]
|
|
709
|
-
[numFullBlocksX * 64 +
|
|
715
|
+
[(uint64_t) numFullBlocksX * 64 +
|
|
710
716
|
((y & 0x7) * 8)];
|
|
711
717
|
|
|
712
718
|
uint16_t* dst = (uint16_t*) chanData[comp]->_rows[y];
|
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
#include "internal_constants.h"
|
|
10
10
|
#include "internal_memory.h"
|
|
11
11
|
|
|
12
|
+
#include <limits.h>
|
|
12
13
|
#include <stdarg.h>
|
|
13
14
|
#include <stdio.h>
|
|
14
15
|
#include <string.h>
|
|
@@ -178,8 +179,9 @@ internal_exr_destroy_parts (exr_context_t ctxt)
|
|
|
178
179
|
|
|
179
180
|
if (ctxt->parts != &(ctxt->init_part)) ctxt->free_fn (ctxt->parts);
|
|
180
181
|
ctxt->init_part = NULL;
|
|
181
|
-
ctxt->parts
|
|
182
|
-
ctxt->
|
|
182
|
+
ctxt->parts = NULL;
|
|
183
|
+
ctxt->part_capacity = 0;
|
|
184
|
+
ctxt->num_parts = 0;
|
|
183
185
|
}
|
|
184
186
|
|
|
185
187
|
/**************************************/
|
|
@@ -191,6 +193,7 @@ internal_exr_add_part (
|
|
|
191
193
|
int ncount = f->num_parts + 1;
|
|
192
194
|
exr_priv_part_t part;
|
|
193
195
|
exr_priv_part_t* nptrs = NULL;
|
|
196
|
+
int newcapacity = 0;
|
|
194
197
|
|
|
195
198
|
if (new_index) *new_index = f->num_parts;
|
|
196
199
|
|
|
@@ -201,18 +204,32 @@ internal_exr_add_part (
|
|
|
201
204
|
/* also need a pointer to pointer... */
|
|
202
205
|
f->init_part = part;
|
|
203
206
|
nptrs = &(f->init_part);
|
|
207
|
+
newcapacity = 1;
|
|
204
208
|
}
|
|
205
209
|
else
|
|
206
210
|
{
|
|
207
211
|
part = f->alloc_fn (sizeof (struct _priv_exr_part_t));
|
|
208
212
|
if (!part) return f->standard_error (f, EXR_ERR_OUT_OF_MEMORY);
|
|
209
213
|
|
|
210
|
-
|
|
211
|
-
if (!nptrs)
|
|
214
|
+
if (ncount > f->part_capacity)
|
|
212
215
|
{
|
|
213
|
-
|
|
214
|
-
|
|
216
|
+
/* grow geometrically so adding N parts is O(N), not O(N^2) */
|
|
217
|
+
int newcap = f->part_capacity < 4
|
|
218
|
+
? 4
|
|
219
|
+
: (f->part_capacity <= INT_MAX / 2
|
|
220
|
+
? f->part_capacity * 2
|
|
221
|
+
: ncount);
|
|
222
|
+
|
|
223
|
+
nptrs = f->alloc_fn (sizeof (exr_priv_part_t) * (size_t) newcap);
|
|
224
|
+
if (!nptrs)
|
|
225
|
+
{
|
|
226
|
+
f->free_fn (part);
|
|
227
|
+
return f->standard_error (f, EXR_ERR_OUT_OF_MEMORY);
|
|
228
|
+
}
|
|
229
|
+
newcapacity = newcap;
|
|
215
230
|
}
|
|
231
|
+
else
|
|
232
|
+
nptrs = f->parts;
|
|
216
233
|
}
|
|
217
234
|
memset (part, 0, sizeof (struct _priv_exr_part_t));
|
|
218
235
|
|
|
@@ -229,15 +246,19 @@ internal_exr_add_part (
|
|
|
229
246
|
part->dwa_compression_level = f->default_dwa_quality;
|
|
230
247
|
|
|
231
248
|
/* put it into the part table */
|
|
232
|
-
|
|
249
|
+
if (nptrs != f->parts)
|
|
233
250
|
{
|
|
234
|
-
|
|
251
|
+
for (int p = 0; p < f->num_parts; ++p)
|
|
252
|
+
{
|
|
253
|
+
nptrs[p] = f->parts[p];
|
|
254
|
+
}
|
|
255
|
+
|
|
256
|
+
if (f->parts && f->parts != &(f->init_part)) { f->free_fn (f->parts); }
|
|
257
|
+
f->parts = nptrs;
|
|
258
|
+
f->part_capacity = newcapacity;
|
|
235
259
|
}
|
|
236
260
|
nptrs[f->num_parts] = part;
|
|
237
|
-
|
|
238
|
-
if (f->parts && f->parts != &(f->init_part)) { f->free_fn (f->parts); }
|
|
239
|
-
f->parts = nptrs;
|
|
240
|
-
f->num_parts = ncount;
|
|
261
|
+
f->num_parts = ncount;
|
|
241
262
|
if (outpart) *outpart = part;
|
|
242
263
|
|
|
243
264
|
return EXR_ERR_SUCCESS;
|
|
@@ -272,7 +293,8 @@ internal_exr_revert_add_part (
|
|
|
272
293
|
if (ctxt->parts && ctxt->parts != &(ctxt->init_part))
|
|
273
294
|
ctxt->free_fn (ctxt->parts);
|
|
274
295
|
|
|
275
|
-
ctxt->parts
|
|
296
|
+
ctxt->parts = NULL;
|
|
297
|
+
ctxt->part_capacity = 0;
|
|
276
298
|
}
|
|
277
299
|
ctxt->num_parts = ncount;
|
|
278
300
|
}
|
|
@@ -229,6 +229,8 @@ struct _priv_exr_context_t
|
|
|
229
229
|
/* cheap array of one */
|
|
230
230
|
exr_priv_part_t init_part;
|
|
231
231
|
exr_priv_part_t* parts;
|
|
232
|
+
/* allocated capacity of the parts array, grown geometrically */
|
|
233
|
+
int part_capacity;
|
|
232
234
|
|
|
233
235
|
exr_attribute_list_t custom_handlers;
|
|
234
236
|
|
|
@@ -38,7 +38,7 @@ compute_sampled_height (int height, int y_sampling, int start_y)
|
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
tmph = height - off;
|
|
41
|
-
if (tmph
|
|
41
|
+
if (tmph <= 0) return 0;
|
|
42
42
|
--tmph;
|
|
43
43
|
nlines = tmph / y_sampling + 1;
|
|
44
44
|
}
|
|
@@ -61,4 +61,26 @@ compute_sampled_width (int width, int x_sampling, int start_x)
|
|
|
61
61
|
return (width == 1) ? 1 : (width / x_sampling);
|
|
62
62
|
}
|
|
63
63
|
|
|
64
|
+
/* Multiplies @p a by @p b and adds the result into @p accum, all as
|
|
65
|
+
* uint64_t. Returns 1 and leaves @p accum unmodified if either the
|
|
66
|
+
* multiplication or the subsequent accumulation would overflow a
|
|
67
|
+
* 64-bit unsigned integer, otherwise returns 0. Used to guard
|
|
68
|
+
* unpacked / scratch buffer size computations (width * height *
|
|
69
|
+
* bytes-per-pixel * channel-count) against wraparound on crafted
|
|
70
|
+
* files with extreme dimensions or channel counts. */
|
|
71
|
+
static inline int
|
|
72
|
+
checked_mul_accum_u64 (uint64_t* accum, uint64_t a, uint64_t b)
|
|
73
|
+
{
|
|
74
|
+
uint64_t prod, sum;
|
|
75
|
+
|
|
76
|
+
if (a != 0 && b > (UINT64_MAX / a)) return 1;
|
|
77
|
+
prod = a * b;
|
|
78
|
+
|
|
79
|
+
sum = *accum + prod;
|
|
80
|
+
if (sum < *accum) return 1;
|
|
81
|
+
|
|
82
|
+
*accum = sum;
|
|
83
|
+
return 0;
|
|
84
|
+
}
|
|
85
|
+
|
|
64
86
|
#endif /* OPENEXR_PRIVATE_UTIL_H */
|
|
@@ -106,6 +106,12 @@ exr_result_t exr_read_chunk (
|
|
|
106
106
|
* but this is a routine to get the sample count table and the packed
|
|
107
107
|
* data in one go, or if you want to pre-read the sample count data,
|
|
108
108
|
* you can get just that buffer.
|
|
109
|
+
*
|
|
110
|
+
* Both buffers are returned as stored in the file. If the part is
|
|
111
|
+
* compressed, the sample count table is compressed too. If it is not,
|
|
112
|
+
* the table holds cumulative per-scanline counts as little-endian
|
|
113
|
+
* 32-bit integers, which callers must convert on big-endian hosts. Use
|
|
114
|
+
* the decode pipeline to get native-order counts.
|
|
109
115
|
*/
|
|
110
116
|
EXR_EXPORT
|
|
111
117
|
exr_result_t exr_read_deep_chunk (
|
|
@@ -2531,14 +2531,14 @@ internal_exr_compute_chunk_offset_size (exr_priv_part_t curpart)
|
|
|
2531
2531
|
for (int c = 0; c < channels->num_channels; ++c)
|
|
2532
2532
|
{
|
|
2533
2533
|
/* tiles do not allow x/y sub sampling */
|
|
2534
|
-
uint64_t cunpsz =
|
|
2535
|
-
|
|
2536
|
-
|
|
2537
|
-
|
|
2538
|
-
|
|
2539
|
-
|
|
2540
|
-
|
|
2541
|
-
|
|
2534
|
+
uint64_t cunpsz = (channels->entries[c].pixel_type == EXR_PIXEL_HALF)
|
|
2535
|
+
? 2
|
|
2536
|
+
: 4;
|
|
2537
|
+
if (checked_mul_accum_u64 (
|
|
2538
|
+
&unpackedsize,
|
|
2539
|
+
cunpsz,
|
|
2540
|
+
(uint64_t) tiledesc->x_size * (uint64_t) tiledesc->y_size))
|
|
2541
|
+
return -1;
|
|
2542
2542
|
}
|
|
2543
2543
|
curpart->unpacked_size_per_chunk = unpackedsize;
|
|
2544
2544
|
curpart->chan_has_line_sampling = ((int16_t) hasLineSample);
|
|
@@ -2557,16 +2557,17 @@ internal_exr_compute_chunk_offset_size (exr_priv_part_t curpart)
|
|
|
2557
2557
|
{
|
|
2558
2558
|
int xsamp = channels->entries[c].x_sampling;
|
|
2559
2559
|
int ysamp = channels->entries[c].y_sampling;
|
|
2560
|
-
uint64_t cunpsz =
|
|
2561
|
-
|
|
2562
|
-
|
|
2563
|
-
|
|
2564
|
-
|
|
2565
|
-
|
|
2566
|
-
|
|
2560
|
+
uint64_t cunpsz = (channels->entries[c].pixel_type == EXR_PIXEL_HALF)
|
|
2561
|
+
? 2
|
|
2562
|
+
: 4;
|
|
2563
|
+
uint64_t sampw =
|
|
2564
|
+
(uint64_t) compute_sampled_width ((int) w, xsamp, dw.min.x);
|
|
2565
|
+
uint64_t samph = (uint64_t) compute_sampled_height (
|
|
2566
|
+
linePerChunk, ysamp, dw.min.y);
|
|
2567
2567
|
if (ysamp > 1)
|
|
2568
2568
|
hasLineSample = 1;
|
|
2569
|
-
unpackedsize
|
|
2569
|
+
if (checked_mul_accum_u64 (&unpackedsize, cunpsz, sampw * samph))
|
|
2570
|
+
return -1;
|
|
2570
2571
|
}
|
|
2571
2572
|
|
|
2572
2573
|
curpart->unpacked_size_per_chunk = unpackedsize;
|
|
@@ -497,8 +497,29 @@ copy_attr (
|
|
|
497
497
|
default: rv = ctxt->standard_error (ctxt, EXR_ERR_INVALID_ATTR); break;
|
|
498
498
|
}
|
|
499
499
|
|
|
500
|
-
if (rv != EXR_ERR_SUCCESS)
|
|
500
|
+
if (rv != EXR_ERR_SUCCESS && attr)
|
|
501
|
+
{
|
|
502
|
+
// the required attributes are cached in the part; don't leave any of
|
|
503
|
+
// them pointing at the attribute that is about to be freed
|
|
504
|
+
exr_attribute_t** cached[] = {
|
|
505
|
+
&part->channels,
|
|
506
|
+
&part->compression,
|
|
507
|
+
&part->dataWindow,
|
|
508
|
+
&part->displayWindow,
|
|
509
|
+
&part->lineOrder,
|
|
510
|
+
&part->pixelAspectRatio,
|
|
511
|
+
&part->screenWindowCenter,
|
|
512
|
+
&part->screenWindowWidth,
|
|
513
|
+
&part->tiles,
|
|
514
|
+
&part->name,
|
|
515
|
+
&part->type,
|
|
516
|
+
&part->version,
|
|
517
|
+
&part->chunkCount};
|
|
518
|
+
for (size_t i = 0; i < sizeof (cached) / sizeof (cached[0]); ++i)
|
|
519
|
+
if (*cached[i] == attr) *cached[i] = NULL;
|
|
520
|
+
|
|
501
521
|
exr_attr_list_remove (ctxt, &(part->attributes), attr);
|
|
522
|
+
}
|
|
502
523
|
|
|
503
524
|
return rv;
|
|
504
525
|
}
|
|
@@ -552,7 +573,7 @@ exr_copy_unset_attributes (
|
|
|
552
573
|
else { rv = EXR_ERR_SUCCESS; }
|
|
553
574
|
}
|
|
554
575
|
|
|
555
|
-
if (update_tiles)
|
|
576
|
+
if (update_tiles && rv == EXR_ERR_SUCCESS)
|
|
556
577
|
rv = internal_exr_compute_tile_information (ctxt, part, 1);
|
|
557
578
|
|
|
558
579
|
if (source != ctxt) internal_exr_unlock (source);
|
|
@@ -11,6 +11,7 @@
|
|
|
11
11
|
|
|
12
12
|
#include <limits.h>
|
|
13
13
|
#include <math.h>
|
|
14
|
+
#include <stdint.h>
|
|
14
15
|
#include <stdio.h>
|
|
15
16
|
#include <string.h>
|
|
16
17
|
|
|
@@ -414,6 +415,22 @@ validate_channels (
|
|
|
414
415
|
return f->report_error (
|
|
415
416
|
f, EXR_ERR_FILE_BAD_HEADER, "At least one channel required");
|
|
416
417
|
|
|
418
|
+
/* Internal coding pipeline structures (exr_coding_channel_info_t
|
|
419
|
+
* descriptor counts, exr_decode/encode_pipeline_t::channel_count)
|
|
420
|
+
* store the channel count in an int16_t. A channel list larger than
|
|
421
|
+
* this silently truncates downstream (e.g. 73,728 channels wraps to
|
|
422
|
+
* 8,192), decoupling the actual channel count from the one used to
|
|
423
|
+
* size scratch/unpacked buffers and leading to undersized
|
|
424
|
+
* allocations relative to the data actually unpacked. Reject such
|
|
425
|
+
* files outright. */
|
|
426
|
+
if (channels->num_channels > INT16_MAX)
|
|
427
|
+
return f->print_error (
|
|
428
|
+
f,
|
|
429
|
+
EXR_ERR_FILE_BAD_HEADER,
|
|
430
|
+
"Channel count (%d) exceeds maximum supported value (%d)",
|
|
431
|
+
channels->num_channels,
|
|
432
|
+
(int) INT16_MAX);
|
|
433
|
+
|
|
417
434
|
dw = curpart->data_window;
|
|
418
435
|
w = (int64_t) dw.max.x - (int64_t) dw.min.x + 1;
|
|
419
436
|
h = (int64_t) dw.max.y - (int64_t) dw.min.y + 1;
|