summaryrefslogtreecommitdiff
path: root/src/lib
AgeCommit message (Collapse)Author
2017-09-20Use a #define J2K_MAX_POCS 32 to avoid hard-coded constant (#349)Even Rouault
2017-09-20Avoid index-out-of-bounds access when invoking opj_compress with -n 11 or ↵Even Rouault
higher. But not a proper fix itself (refs #493)
2017-09-19Avoid relying on operator precedence (raised by cppcheck)Even Rouault
2017-09-19Workaroudn cppcheck (correct) warning about same code in then and else branchesEven Rouault
2017-09-19Fix badly named variable in function prototype (raised by cppcheck)Even Rouault
2017-09-19Remove redundant test (raised by cppcheck)Even Rouault
2017-09-19Replace C++ style comments by C onesEven Rouault
2017-09-19Replace C++ style comments by C onesEven Rouault
2017-09-19Fix warnings and errors when compiling with a c++ compiler (#1021)Even Rouault
2017-09-19Fix compilation with AppleClang 8.1.0.8020042 (#1020)Even Rouault
2017-09-17Build: make sure that -DBUILD_SHARED_LIBS:bool=off is honoured to build only ↵Even Rouault
the static lib (#1019)
2017-09-08opj_tcd_mct_decode(): avoid heap buffer overflow when components have not ↵Even Rouault
the same number of resolutions. Also fixes an issue with subtile decoding. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3331. Credit to OSS Fuzz
2017-09-08opj_j2k_update_image_data(): restrict optimized pathEven Rouault
2017-09-08Use opj_image_data_free() where appropriate (adapted from ↵Even Rouault
https://github.com/uclouvain/openjpeg/pull/1015/commits/dab9db0723a5bb9f3d745f9dd7a0b8b3b18b8054, #1014)
2017-09-07Properly fix cc893a4ebfaf8c42cf1221ac82c83df91e77340b to avoid ↵Even Rouault
heap-buffer-overflow when numcomps < 3
2017-09-07Avoid malloc poisoning issue when including <pthread.h> of uclibc (#1013)Even Rouault
2017-09-07opj_tcd_mct_decode(): fix checks to verify MCT can be done safely. Fixes ↵Even Rouault
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3305 (master only)
2017-09-06Fix invalid access out of bounds, and bad behaviour, when calling repeatdly ↵Even Rouault
opj_get_decoded_tile() on an image with a color palette
2017-09-06Fix 2.2.0 regression when reading codestream with reperated calls to ↵Even Rouault
opj_get_decoded_tile() where tile parts of a same tile are not consecutive This check was introduced per #939, but relied on the incorrect assumption we decode all the tile parts of all tiles.
2017-09-06Fix null pointer dereference on partial tile decoding when they are empty. ↵Even Rouault
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3297 (master only)
2017-09-05Merge pull request #1010 from rouault/subtile_decoding_stage3Even Rouault
Subtile decoding: memory use reduction and perf improvements
2017-09-04Replace uses of size_t by OPJ_SIZE_TEven Rouault
2017-09-02Improve error message when specifying a too big cp_reduce parameter (#474)Even Rouault
2017-09-01opj_v4dwt_decode_step1_sse(): rework a bit to improve code generationEven Rouault
2017-09-01opj_j2k_update_image_data(): avoid allocating image buffer if we can just ↵Even Rouault
reuse the tile buffer one
2017-09-01opj_t1_clbl_decode_processor(): use SSE2 in subtile decoding code path, for ↵Even Rouault
irreversible
2017-09-01Replace error message 'Not enough memory for tile data' by 'Size of tile ↵Even Rouault
data exceeds system limits' (refs https://github.com/uclouvain/openjpeg/pull/730#issuecomment-326654188)
2017-09-01opj_t1_decode_cblk(): move some code to codeblock processor for ↵Even Rouault
(theoretical) better multi-threading in subtile decoding
2017-09-01sparse_array: optimizations for lossy caseEven Rouault
2017-09-01opj_tcd_rateallocate(): make sure to use all passes for a lossless layer (#1009)Even Rouault
And save a useless loop, which should be a tiny faster.
2017-09-01opj_j2k_setup_encoder(): emit warnings if tcp_rates are not decreasing or ↵Even Rouault
tcp_distoratio are not increasing (#1009)
2017-09-01opj_j2k_setup_encoder(): avoid potential int overflow in computations ↵Even Rouault
related to max_cs_size
2017-09-01opj_compress help: revert 32572617765cb9d77302384653a48d793b8f657f and ↵Even Rouault
indicate 1 again as being the value to get lossless for -r. In opj_j2k_setup_encoder(), make sure that ll rates[] <= 1.0 are set to 0. Document 0 as being lossless for -q / tcp_distoratio (#1009)
2017-09-01opj_v4dwt_decode_step2_sse(): loop unrollEven Rouault
2017-09-01opj_dwt_decode_partial_97(): simplify/more efficient use of sparse arrays in ↵Even Rouault
vertical pass
2017-09-01opj_tcd_dc_level_shift_decode(): optimize lossy caseEven Rouault
2017-09-01opj_dwt_decode_partial_1_parallel(): add SSE2 optimizationEven Rouault
2017-09-01Sub-tile decoding: speed up vertical pass in IDWT5x3 by processing 4 cols at ↵Even Rouault
a time
2017-09-01Tiny perf improvement in T1 stage for subtile decodingEven Rouault
2017-09-01Optimize opj_dwt_decode_partial_1() when cas == 0Even Rouault
2017-09-01opj_j2k_update_image_data(): avoid zero-ing the buffer if not neededEven Rouault
2017-09-01Optimize reading/write into sparse arrayEven Rouault
2017-09-01Allow several repeated calls to opj_set_decode_area() and opj_decode() for ↵Even Rouault
single-tiled images * Only works for single-tiled images --> will error out cleanly, as currently in other cases * Save re-reading the codestream for the tile, and re-use code-blocks of the previous decoding pass. * Future improvements might involve improving opj_decompress, and the image writing logic, to use this strategy.
2017-09-01opj_j2k_decode_tiles(): apply whole single tile image decoding optimization ↵Even Rouault
to reading at reduced resolution as well
2017-09-01Various changes to allow tile buffers of more than 4giga pixelsEven Rouault
Untested though, since that means a tile buffer of at least 16 GB. So there might be places where uint32 overflow on multiplication still occur...
2017-09-01TCD: allow tile buffer to be greater than 4GB on 64 bit hosts (but number of ↵Even Rouault
pixels must remain under 4 billion)
2017-09-01Fix compiler warning in release modeEven Rouault
2017-09-01Remove limitation that prevents from opening images bigger than 4 billion pixelsEven Rouault
However the intermediate buffer for decoding must still be smaller than 4 billion pixels, so this is useful for decoding at a lower resolution level, or subtile decoding.
2017-09-01opj_tcd_init_tile(): fix typo on overflow detection condition (introduced in ↵Even Rouault
previous commit)
2017-09-01opj_dwt_decode_partial_tile(): avoid undefined behaviour in lifting ↵Even Rouault
operation by properly initializing working buffer