| Age | Commit message (Collapse) | Author |
|
|
|
opj_t2_read_packet_header(): avoid unsigned integer overflow
|
|
to https://github.com/uclouvain/openjpeg/pull/1488)
|
|
opj_dwt_decode_tile(): avoid potential UndefinedBehaviorSanitizer 'applying zero offset to null pointer' (fixes #1505)
|
|
Always install pkgconfig files
|
|
opj_decompress: fix off-by-one read heap-buffer-overflow in sycc420_to_rgb() when x0 and y0 are odd (CVE-2021-3575, fixes #1347)
|
|
zero offset to null pointer' (fixes #1505)
|
|
when x0 and y0 are odd (CVE-2021-3575, fixes #1347)
|
|
|
|
They are supported on all platforms
|
|
Add cmake version file
|
|
|
|
CMake: drop support for cmake < 3.5
|
|
Compatibility for cmake version < 3.5 is now deprecated in cmake and
specifing version below 3.5 in cmake_minimum_required produces a
warning.[1]
[1] https://cmake.org/cmake/help/latest/release/3.27.html#deprecated-and-removed-features
|
|
Fix compiler error on Windows
|
|
|
|
Use NEON instructions for ARM64 (implementation based on microsoft/STL#2127).
Godbolt output here: https://godbolt.org/z/q7GPTqT14
|
|
opj_tcd_dc_level_shift_decode(): avoid increment nullptr (fixes #1480)
|
|
Integer Overflow at j2k.c:3962
|
|
Integer Overflow at j2k.c:11114
|
|
fix ht_dec.c:1215
|
|
(likely harmless issue as we don't dereference it)
|
|
Require `stdint.h` & `inttypes.h`
|
|
suppress warning during build using clang
|
|
destination. fix ht_dec.c:1215 (#1492)
|
|
|
|
|
|
Fix CI
|
|
|
|
|
|
|
|
|
|
With #1450 which goes with 480cc9d49775d018c19ce0e01f6be27858d63d39 "Remove support for non-C99 compilers (like VS2010) that don't support snprintf()",
support for MSVC versions prior to vs2015 is dropped: https://stackoverflow.com/questions/2915672/snprintf-and-visual-studio-2010
This means that all supported MSVC versions do have `stdint.h` & `inttypes.h` now.
For non windows platforms, those headers were already mandatory.
Make them mandatory for all builds.
|
|
fix: use `opj_uint_ceildiv` instead of `opj_int_ceildiv` when necessary
|
|
|
|
There are a bunch of loc where we can see a usage of `opj_int_ceildiv`:
```
(OPJ_UINT32)opj_int_ceildiv((OPJ_INT32)a, (OPJ_INT32)b);
```
where a & b are `OPJ_UINT32`.
This can lead to overflow/underflow for some a/b combinations.
Replace those calls by `opj_uint_ceildiv` instead to always get a correct result.
This also allows some valid single tile images with huge tile size to be decoded properly.
Fix #1438
|
|
opj_jp2_read_header(): move setting color_space here instead in opj_jp2_decode()/get_tile() (fixes #570)
|
|
opj_jp2_decode()/get_tile() + add unit test (fixes #570)
|
|
opj_jp2_decode()/get_tile() (fixes #570)
|
|
CMake: error out on warnings for strict/missing prototypes.
|
|
And fix strict-prototypes/missing-prototypes warnings.
|
|
openjp2/j2k: replace sprintf calls with snprintf
|
|
This makes it possible to build j2k.c without warnings using the macOS
13 SDK. Calls to sprintf are replaced with snprintf, passing appropriate
buffer sizes.
It doesn’t appear that any of the changed uses of sprintf were actually
unsafe, so no behavior change is expected aside from SDK compatibility.
The macOS 13 SDK deprecates sprintf as it’s difficult to use safely. The
deprecation warning message is visible when building C++, but it is not
normally visible when building plain C code due to a quirk in how
sprintf is declared in the SDK. However, the deprecation message is
visible when building plain C under Address Sanitizer
(-fsanitize=address). This discrepancy was discovered at
https://crbug.com/1381706 and reported to Apple with a copy at
https://openradar.appspot.com/FB11761475.
The macOS 13 SDK is packaged in Xcode 14.1, released on 2022-11-01. This
also affects the iOS 16 SDK and other 2022-era Apple OS SDKs packaged in
Xcode 14.0, released on 2022-09-12.
j2k.c is visible to the Chromium build via PDFium, and this change is
needed to allow Chromium to move forward to the macOS 13 SDK.
This change is limited to src/lib/openjp2. Other uses of sprintf were
found throughout openjpeg.
|
|
|
|
Fix CI
|
|
|
|
opj_t2_skip_packet_data(): avoid out-of-bounds reads on truncated images in non-strict mode (fixes #1459)
|
|
non-strict mode (fixes #1459)
|
|
|
|
Fix incorrect decoding of image with large number of progression levels
|