<br/>
<h1>Changelog from Git</h1><br/><br/>
<div class='changelog'>
-<pre class='wrap'>commit e5ab1682a1bf52c203b16720011d869901929ac9
+<pre class='wrap'>commit 113e0976e232ac2110d50405f8629787f3f53cfc
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-09-02 09:10:53 +0200
+Date: 2017-09-21 14:14:32 +0200
- Improve error message when specifying a too big cp_reduce parameter (#474)
+ Comment dead code (Coverity CID 94681)
-commit b428b8c7e7227cf96c83229df4d7bf009b6d2172
+commit 39082fc6654553f43f6f3a73e0eeaedebc4bdf9f
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-09-01 20:01:39 +0200
+Date: 2017-09-21 14:13:16 +0200
- opj_tcd_rateallocate(): make sure to use all passes for a lossless layer (#1009)
-
- And save a useless loop, which should be a tiny faster.
+ Workaround Coverity CID 113061
-commit 7aa071aa273aa0b8fafbf055e5eb99b9cb8600a8
+commit 7711307d865d46ca1bb8bb152071178b10066d05
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-09-01 19:49:01 +0200
+Date: 2017-09-21 14:10:49 +0200
- opj_j2k_setup_encoder(): emit warnings if tcp_rates are not decreasing or tcp_distoratio are not increasing (#1009)
+ Workaround Coverity CID 169392
-commit a538815c774db94a0d3fa323c9ca4f456ef04903
+commit 19e157871ff28bb5e8296f9e9f9aee6a17a37ace
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-09-01 19:27:56 +0200
+Date: 2017-09-21 14:06:03 +0200
- opj_j2k_setup_encoder(): avoid potential int overflow in computations related to max_cs_size
+ opj_j2k_get_default_thread_count(): validate value of OPJ_NUM_THREADS to fix Coverity 179465 and 179463
-commit 09929bb615bd6bf2a9f7703fc7b04a12096b091e
+commit 68e596dada2ee38a66b01494e5a425e623688300
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-09-01 19:16:35 +0200
+Date: 2017-09-21 13:54:14 +0200
- opj_compress help: revert 32572617765cb9d77302384653a48d793b8f657f and 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)
+ Fix copy&paste error (Coverity CID 169394)
-commit 32572617765cb9d77302384653a48d793b8f657f
+commit 16b701659d7d9f72aade1d695818a645e2f603a6
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-09-01 17:32:54 +0200
+Date: 2017-09-20 01:06:02 +0200
- opj_compress help: indicate 0 value, instead of 1, for -r parameter to get lossless encoding (#1009)
+ opj_decompress: add a warning when -d and -t are used together (#693)
-commit 6ce49bf5aebb3c45c464fa82d14cfd4bf7026a28
+commit b8c4b450c4b5bec649463573f57235c4f41c57cd
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-09-01 10:26:18 +0200
+Date: 2017-09-20 00:55:22 +0200
- Fix undefined shift behaviour in opj_dwt_is_whole_tile_decoding(). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3255. Credit to OSS Fuzz
+ Use a #define J2K_MAX_POCS 32 to avoid hard-coded constant (#349)
-commit 04b70908a7ada29481d2e1903b76f44a68d4d268
+commit 9cba05762ded66b803df94b00adbd5a97727da95
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-29 11:40:53 +0200
+Date: 2017-09-20 00:43:54 +0200
- Use IDWT whole tile decoding if the area of interest equals to the image bounds, taking into account the reduced resolution factor
+ Avoid index-out-of-bounds access when invoking opj_compress with -n 11 or higher. But not a proper fix itself (refs #493)
-commit 4776b15fa7ec2afa74f65cd471f94513ea08205a
+commit 8df07d5866c9e3517bf04a7abee4a07a04735df4
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-28 18:07:44 +0200
+Date: 2017-09-19 18:35:52 +0200
- Add test for fix of a55c024fc6b917a409b85aeafd7326421c4aea34
+ Avoid relying on operator precedence (raised by cppcheck)
-commit a55c024fc6b917a409b85aeafd7326421c4aea34
+commit c22ea12219c711031ef9b5823f2d9eb1081261e9
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-28 17:18:33 +0200
+Date: 2017-09-19 18:35:31 +0200
- Subtile decoding: fix overflows in subband coordinate computation that cause later buffer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3115. Credit to OSS Fuzz. master only
+ Workaroudn cppcheck (correct) warning about same code in then and else branches
-commit 8f92fc97913bec7ffa2dc10d062c0cdd19da20e4
+commit c84e594cffb181b96f522becf1ba0302e2cc6da7
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-28 14:57:49 +0200
+Date: 2017-09-19 18:35:07 +0200
- Make opj_set_decode_area() and opj_decode() take into account opj_set_decoded_resolution_factor() (#1006, affect API use)
-
- * Better document usage of opj_set_decode_area(), ie expecting coordinates
- in full resolution/reference grid even if requesting at a lower resolution
- factor
- * Make sure that image->comps[].factor is set by opj_set_decode_area() and
- opj_decode() from the value specified in opj_set_decoded_resolution_factor()
- * opj_decompress: add 2 environmenet variables to test alternate ways of
- using the API, namely USE_OPJ_SET_DECODED_RESOLUTION_FACTOR=YES to use
- opj_set_decoded_resolution_factor() instead of parameters.cp_reduce, and
- SKIP_OPJ_SET_DECODE_AREA=YES to not call opj_set_decode_area() if -d is
- not specified.
+ Fix badly named variable in function prototype (raised by cppcheck)
-commit 5a4a10120a648848de7522245f8671c3ce285dbc
+commit 82ab7effe3e65b989ee8e97719ceca71908b16ed
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-24 14:38:24 +0200
+Date: 2017-09-19 18:34:49 +0200
- Another cleanup in knownfailures-* files
+ Remove redundant test (raised by cppcheck)
-commit e0a5d148f7e84d18a52c97bd08b21b1dffa9570a
+commit ce8edf9bffb8caae5480b862a04b66e0e355394b
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-24 14:32:36 +0200
+Date: 2017-09-19 18:25:55 +0200
- Remove test steps from specialized knownfailures- that are already in knownfailures-all.txt
+ Replace C++ style comments by C ones
-commit 79aa0b54ddd3e4e3ca09374cb82bd3302a65783a
+commit d415723fd9f2ee415e506e94ee8be8127680fdcd
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-24 14:31:13 +0200
+Date: 2017-09-19 18:22:07 +0200
- issue104_jpxstream.jp2 decompresses just fine (and like Kakadu). Update md5refs.txt and remove from knownfailures
+ Replace C++ style comments by C ones
-commit c059f431e6262fe5ce296e8137dd478dfe4d1af1
+commit ce199f42e77f972d6ee782b63492f6d861891053
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-24 14:09:34 +0200
+Date: 2017-09-19 12:48:12 +0200
- Remove broken.jpc test from known failures, by avoiding too long processing time
+ src/bin/jp3d/convert.c: add missing fclose() in error code path (#1018)
-commit 5146abc02ebd871aa1e737373cdc7654e8e4b07f
+commit fdef69b43ce5222ac0f2a87f2fad1442ece340e8
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-24 14:09:31 +0200
+Date: 2017-09-19 12:46:20 +0200
- imagetopgx(): improve performance in 8 bit case (relates to broken.jpc test case)
+ Fix warnings and errors when compiling with a c++ compiler (#1021)
-commit fdcd4e6365731cc1015213e424068131bcd1f31f
+commit 18f6696372f4c32334385f8dcc8d39ad8ac24601
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-24 13:23:25 +0200
+Date: 2017-09-19 12:13:34 +0200
- Remove -NR-DEC-p1_06.j2k-156-decode and NR-DEC-p1_06.j2k-164-decode from knownfailures
-
- and make them explicit failures. The result images are empty at the requested resolution
+ Fix compilation with AppleClang 8.1.0.8020042 (#1020)
-commit bc71bd1219269057ea18e6acbc77a96ec37aba82
+commit 3dfc6ca2bcf06fd1adb6b6b4cecc6c092f08ba0b
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-23 18:58:32 +0200
+Date: 2017-09-17 12:17:49 +0200
- opj_dwt_decode_partial_97(): perf improvement: limit copy of coefficients at end of horizontal pass to actual range of interest
+ Build: make sure that -DBUILD_SHARED_LIBS:bool=off is honoured to build only the static lib (#1019)
-commit 8180eeace13ffceef5dd7c3f80be156e36181846
+commit 28094e1ebfa420f9a0bdc7a11b8d4ee5f154db35
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-21 23:06:53 +0200
+Date: 2017-09-08 10:56:49 +0200
- test_tile_encoder: fix checks on argc
+ opj_tcd_mct_decode(): avoid heap buffer overflow when components have not 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
-commit c97666f72ba26a7ceb64931963b988a6f8f377f9
+commit 33167ddc13fd20313ccfcdc64141000407b68b8f
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-21 19:02:04 +0200
+Date: 2017-09-08 09:53:52 +0200
- j2k.c: fix comment, and remove FIXME
+ opj_j2k_update_image_data(): restrict optimized path
-commit 24d069e3ffa2286930a2e7e2638431ea1de6846a
+commit b73ce715d2a484d7355639d863d0418a0e5b8858
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-21 17:19:13 +0200
+Date: 2017-09-08 09:16:51 +0200
- Add comment
+ Use opj_image_data_free() where appropriate (adapted from https://github.com/uclouvain/openjpeg/pull/1015/commits/dab9db0723a5bb9f3d745f9dd7a0b8b3b18b8054, #1014)
-commit e9bbc6d3dde946bdb5195f053f24b91335d5d84c
-Merge: 3eed024 17a7ac4
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-08-21 13:02:07 +0200
+commit 5abd86b14bb26d1882ee1c07b03f809f85162a5d
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-09-07 18:01:33 +0200
- Merge pull request #1001 from rouault/subtile_decoding_stage2
-
- Subtile decoding: only apply IDWT on areas that participate to the window of interest
+ Properly fix cc893a4ebfaf8c42cf1221ac82c83df91e77340b to avoid heap-buffer-overflow when numcomps < 3
+
+commit 51a1dcaa6ed5713520dca36fc58cd9240c08b7ca
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-09-07 17:52:59 +0200
+
+ Avoid malloc poisoning issue when including <pthread.h> of uclibc (#1013)
+
+commit cc893a4ebfaf8c42cf1221ac82c83df91e77340b
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-09-07 15:32:54 +0200
+
+ opj_tcd_mct_decode(): fix checks to verify MCT can be done safely. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3305 (master only)
-commit 17a7ac42d581c537cfc1da4324e53047ad82b13e
+commit c67e1cd73f6c1fca081f5445af4f65b240c40edc
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-21 12:25:38 +0200
+Date: 2017-09-06 17:33:38 +0200
- Add comments for filter_width values
+ Fix invalid access out of bounds, and bad behaviour, when calling repeatdly opj_get_decoded_tile() on an image with a color palette
-commit f87c5ef7ebef3d7a908e98f2de1b6a0336ae57ae
+commit 297f202104fc0ff6b0627e15e7e6883c915f80bf
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-20 22:02:41 +0200
+Date: 2017-09-06 16:49:28 +0200
- Subtile decoding: only do 9x7 IDWT computations on relevant areas of tile-component buffer.
+ Fix 2.2.0 regression when reading codestream with reperated calls to 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.
-commit 3eed024eb45534f86537404e08d08fa572a40782
+commit 003759a4829f3f1baa5a2292956618fecf314818
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-19 15:45:54 +0200
+Date: 2017-09-06 15:59:19 +0200
- pgxtoimage(): avoid excessive memory allocation attempt (#999)
+ Fix null pointer dereference on partial tile decoding when they are empty. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3297 (master only)
-commit 5d403250561398f7ba3041d9eb8c893bd680dd72
+commit e656822f927c869f31f2685c67644eacb75fc5d2
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-18 15:08:51 +0200
+Date: 2017-09-05 23:32:03 +0200
+
+ Add knownfailures-Ubuntu12.04-gcc4.6.3-x86_64-Release-3rdP.txt
+
+ For some reason, the OPJ_CI_ARCH=x86_64 OPJ_CI_BUILD_CONFIGURATION=Release OPJ_NUM_THREADS=2
+ configuration fails once PR1010 has been merged in master
+ ( https://travis-ci.org/uclouvain/openjpeg/jobs/272219011 ) whereas (almost) the same
+ code in my branch didn't fail per https://travis-ci.org/rouault/openjpeg/jobs/271738113
+
+ The errors we get are the same as with the other x86_64 compilers, so nothing alarming here.
- Subtile decoding: only do 5x3 IDWT computations on relevant areas of tile-component buffer.
+commit 968e36bbd989fdf789c6a02c80c747346bb851c5
+Merge: 3a382d3 579b893
+Author: Even Rouault <even.rouault@mines-paris.org>
+Date: 2017-09-05 22:18:58 +0200
+
+ Merge pull request #1010 from rouault/subtile_decoding_stage3
- This lowers 'bin/opj_decompress -i ../MAPA.jp2 -o out.tif -d 0,0,256,256'
- down to 0.860s
+ Subtile decoding: memory use reduction and perf improvements
-commit e5285319229a5d77bf316bb0d3a6cbd3cb8666d9
+commit 579b8937eae7e6b6868b8b5c6286a742c10a5130
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-18 13:39:20 +0200
+Date: 2017-09-04 17:35:52 +0200
- pgxtoimage(): fix write stack buffer overflow (#997)
+ Replace uses of size_t by OPJ_SIZE_T
-commit 028c504a43e962a725c4fd73d6642ee73c653e1b
+commit 3a382d312306f45853b3ad78b770754d4bc7e440
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-18 12:30:11 +0200
+Date: 2017-09-03 00:30:36 +0200
- test_decode_area: fix to make it work with odd image dimensions
+ opj_getopt.c: avoid crash on invalid input (#301)
-commit 5597522cac96b1bc6d48a447751b1c6049248eef
+commit e5ab1682a1bf52c203b16720011d869901929ac9
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-18 10:16:38 +0200
+Date: 2017-09-02 09:10:53 +0200
- bmp_read_rle8_data(): avoid potential infinite loop (#996)
+ Improve error message when specifying a too big cp_reduce parameter (#474)
-commit 5d12806091eab0659431fefcefdb797b09f8e884
+commit c1e0fba0c46cb528a08b89b986e86ff0f4792558
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-17 19:18:48 +0200
+Date: 2017-09-01 22:09:58 +0200
- opj_j2k_update_rates(): grow tile size buffer for some situations
+ opj_v4dwt_decode_step1_sse(): rework a bit to improve code generation
-commit 4b0bfbfabc3ce1cc4c6d18dc7113b9f6335372d4
+commit 676d4c807f0162877f9f32e4cdda2e242788d410
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-17 16:07:19 +0200
+Date: 2017-09-01 21:36:35 +0200
- Zero-initialize tile buffer regions of skipped code-blocks, so as to make Valgrind happy
+ opj_j2k_update_image_data(): avoid allocating image buffer if we can just reuse the tile buffer one
-commit fe338a057c39797bf61939471ebaef09e44464c7
+commit 4c7effa6bc37beb2a8e2f29ecf5845cde93f6b88
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-14 13:23:57 +0200
+Date: 2017-09-01 21:17:26 +0200
- Sub-tile decoding: only decode precincts and codeblocks that intersect the window specified in opj_set_decode_area()
+ opj_t1_clbl_decode_processor(): use SSE2 in subtile decoding code path, for irreversible
-commit 17ea17f487a777d14bd322ac06c4e6cb9124a226
+commit 2c365fe0ecc8c6597db491a953a91308b1d0d4b1
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-17 19:05:29 +0200
+Date: 2017-09-01 20:43:39 +0200
- Fix -Wconversion warning
+ Replace error message 'Not enough memory for tile data' by 'Size of tile data exceeds system limits' (refs https://github.com/uclouvain/openjpeg/pull/730#issuecomment-326654188)
-commit fd8448ed446a935da3210821a783e794ede3c599
+commit 559d16e8f43a0cd090d217d7d111820989299b85
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-17 17:04:48 +0200
+Date: 2017-09-01 16:31:13 +0200
- bench_dwt.c: fix signedness related warnings
+ opj_t1_decode_cblk(): move some code to codeblock processor for (theoretical) better multi-threading in subtile decoding
-commit da046b73a89806eae2f7f461c2a46bda7e07aaa8
+commit 7017e67a01c378a7a1ee5e34dd544c793b5c23e4
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-17 17:02:40 +0200
+Date: 2017-09-01 16:31:10 +0200
- convert.c: fix recently introduced -Wsign-conversion warnings
+ sparse_array: optimizations for lossy case
-commit 9f7d79fd30df3712e6bfc6d475bfa143c069c4df
+commit b428b8c7e7227cf96c83229df4d7bf009b6d2172
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-17 14:52:10 +0200
+Date: 2017-09-01 20:01:39 +0200
- opj_getopt_long(): avoid infinite loop on invalid or missing value for an option (#736)
+ opj_tcd_rateallocate(): make sure to use all passes for a lossless layer (#1009)
+
+ And save a useless loop, which should be a tiny faster.
-commit 1ab6e0e07a67193564811c5720a69cb28f09a809
+commit 7aa071aa273aa0b8fafbf055e5eb99b9cb8600a8
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-17 12:01:16 +0200
+Date: 2017-09-01 19:49:01 +0200
- opj_decompress_fuzzer.cpp: reject images with too big tiles. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2918. Credit to OSS Fuzz
+ opj_j2k_setup_encoder(): emit warnings if tcp_rates are not decreasing or tcp_distoratio are not increasing (#1009)
-commit 2cd30c2b06ce332dede81cccad8b334cde997281
+commit a538815c774db94a0d3fa323c9ca4f456ef04903
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-17 11:47:40 +0200
+Date: 2017-09-01 19:27:56 +0200
- tgatoimage(): avoid excessive memory allocation attempt, and fixes unaligned load (#995)
+ opj_j2k_setup_encoder(): avoid potential int overflow in computations related to max_cs_size
-commit 09e83407fa2b53c606d3179031b8d8b31272e20c
+commit 09929bb615bd6bf2a9f7703fc7b04a12096b091e
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-17 11:05:53 +0200
+Date: 2017-09-01 19:16:35 +0200
- Avoid asserting on assert(i == pcol) in opj_jp2_apply_pclr() by adding new check in opj_jp2_check_color(). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3068. Credit to OSS Fuzz
+ opj_compress help: revert 32572617765cb9d77302384653a48d793b8f657f and 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)
-commit 8e6c371e66d9c579048fd336cc3365869486080a
+commit 32572617765cb9d77302384653a48d793b8f657f
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-16 18:29:59 +0200
+Date: 2017-09-01 17:32:54 +0200
- opj_t1_encode_cblk(): avoid uint32 overflow when numbps = 0 (which is well defined behaviour, and is properly handled here, but better avoid it to detect real issues)
+ opj_compress help: indicate 0 value, instead of 1, for -r parameter to get lossless encoding (#1009)
-commit 1e387de74273c4dac618df94475556541c1caf3e
+commit 8a17be8945f6f8fcae3f9e5c7c4988e971d245ee
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-16 17:38:47 +0200
+Date: 2017-09-01 16:31:08 +0200
- Fix build issue of JPWL by adding opj_image_data_alloc() and opj_image_data_free() to src/lib/openmj2 (#994)
+ opj_v4dwt_decode_step2_sse(): loop unroll
-commit c535531f03369623b9b833ef41952c62257b507e
+commit 83b5a168ec0e89210671d60670c9a1143ce8776b
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-16 17:20:29 +0200
+Date: 2017-09-01 16:31:06 +0200
- opj_t2_encode_packet(): fix potential write heap buffer overflow (#992)
+ opj_dwt_decode_partial_97(): simplify/more efficient use of sparse arrays in vertical pass
-commit dcac91b8c72f743bda7dbfa9032356bc8110098a
+commit ae19001ba425a9b396a29fba3417dccc746bd2ef
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-16 17:09:10 +0200
+Date: 2017-09-01 16:31:04 +0200
- opj_j2k_write_sot(): fix potential write heap buffer overflow (#991)
+ opj_tcd_dc_level_shift_decode(): optimize lossy case
-commit af760007711bf93041d3eba3a41b9a48d365f303
+commit 470f3ed416a8cc3618b2c04000ea7b4694043f34
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-16 13:36:52 +0200
+Date: 2017-09-01 16:31:02 +0200
- tiftoimage(): fix read heap buffer overflow (#988)
-
- The number of components is given only by TIFFTAG_SAMPLESPERPIXEL / tiSpp.
- Querying TIFFTAG_EXTRASAMPLES only give information about which channel is
- the alpha channel, but we mostly ignore it for now, so remove that part of the
- code.
+ opj_dwt_decode_partial_1_parallel(): add SSE2 optimization
-commit ab4de904e7dc1deee83122cd2bf6e0e7f4eb2eb0
+commit 873004c615b1bed3ce780e869288602af86fdee5
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-16 13:11:36 +0200
+Date: 2017-09-01 16:31:00 +0200
- imagetotga(): fix read heap buffer overflow if numcomps < 3 (#987)
+ Sub-tile decoding: speed up vertical pass in IDWT5x3 by processing 4 cols at a time
-commit 9624b2fa4722edf77fbac631e7dacaae12c91672
+commit ccac773556070ede24ea3dfbdec47c2b3c5be5c4
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-16 12:52:33 +0200
+Date: 2017-09-01 16:30:58 +0200
- opj_t2_encode_packet(): only emit an error about insufficiently large output buffer in FINAL_PASS mode. Fixes (master-only) regression added in 0b4fef6d1901254e41ab74ed681daba477d724c3
+ Tiny perf improvement in T1 stage for subtile decoding
-commit 4241ae6fbbf1de9658764a80944dc8108f2b4154
+commit 18635df518602265b71da3c70c4d3b774bc3dfc2
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-15 11:55:58 +0200
+Date: 2017-09-01 16:30:56 +0200
- Fix assertion in debug mode / heap-based buffer overflow in opj_write_bytes_LE for Cinema profiles with numresolutions = 1 (#985)
+ test_decode_area: accept user bounds in -strip_height mode
-commit 52d5690a6fcba86b5f117eeac8aca1971cac3688
-Merge: baf0c1a bc59410
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-08-14 17:28:26 +0200
+commit 82a43d8035ca5f43e198e15faef6c9ac44b39541
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-09-01 16:30:54 +0200
- Merge pull request #984 from stweil/const
-
- Use more const qualifiers
+ Optimize opj_dwt_decode_partial_1() when cas == 0
-commit baf0c1ad4572daa89caa3b12985bdd93530f0dd7
+commit 1644665a9105e2d761e8b29f43af602560e6bcf9
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-14 17:26:58 +0200
+Date: 2017-09-01 16:30:52 +0200
- bmp_read_info_header(): reject bmp files with biBitCount == 0 (#983)
+ opj_j2k_update_image_data(): avoid zero-ing the buffer if not needed
-commit afb308b9ccbe129608c9205cf3bb39bbefad90b9
+commit b2cc8f7f81242f967b65e76de043e5e31663d793
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-14 17:20:37 +0200
+Date: 2017-09-01 16:30:50 +0200
- Encoder: grow buffer size in opj_tcd_code_block_enc_allocate_data() to avoid write heap buffer overflow in opj_mqc_flush (#982)
+ Optimize reading/write into sparse array
-commit bc59410f253b0cd3d4818ec06ce957cbdbfe4341
-Author: Stefan Weil <sw@weilnetz.de>
-Date: 2017-08-14 14:36:06 +0200
+commit 0ae3cba3404674bbe2028ea9a801301a4c951b33
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-09-01 16:30:48 +0200
- Use const qualifier for mqc_states
-
- This allows more compiler optimizations.
+ Allow several repeated calls to opj_set_decode_area() and opj_decode() for single-tiled images
- Signed-off-by: Stefan Weil <sw@weilnetz.de>
+ * 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.
+
+commit 5d07d463fdb0a5eeffa90eba1566cc21697011b8
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-09-01 16:30:45 +0200
-commit 10e6ce2c2cfacf51fdde7e9c69bf2365840f4bb0
-Author: Stefan Weil <sw@weilnetz.de>
-Date: 2017-08-13 22:57:31 +0200
+ opj_j2k_decode_tiles(): apply whole single tile image decoding optimization to reading at reduced resolution as well
- Use const qualifier for j2k_prog_order_list
-
- This allows more compiler optimizations.
+commit 98b93103613c90753fb6c57696f9403f8ea0b1d6
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-09-01 16:30:44 +0200
+
+ Various changes to allow tile buffers of more than 4giga pixels
- Signed-off-by: Stefan Weil <sw@weilnetz.de>
+ 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...
-commit 0b4c3ce75d11600ebc6675bd871f78ca3c95bc60
-Merge: a35b489 9f75088
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-08-11 15:13:35 +0200
+commit 008a12d4fce0a7b1eabc51e04ed339be759646e2
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-09-01 16:30:41 +0200
+
+ TCD: allow tile buffer to be greater than 4GB on 64 bit hosts (but number of pixels must remain under 4 billion)
+
+commit 6ce49bf5aebb3c45c464fa82d14cfd4bf7026a28
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-09-01 10:26:18 +0200
+
+ Fix undefined shift behaviour in opj_dwt_is_whole_tile_decoding(). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3255. Credit to OSS Fuzz
- Merge pull request #980 from szukw000/changes-for-ppc64-converttif
+commit 04b70908a7ada29481d2e1903b76f44a68d4d268
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-29 11:40:53 +0200
+
+ Use IDWT whole tile decoding if the area of interest equals to the image bounds, taking into account the reduced resolution factor
+
+commit 4776b15fa7ec2afa74f65cd471f94513ea08205a
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-28 18:07:44 +0200
+
+ Add test for fix of a55c024fc6b917a409b85aeafd7326421c4aea34
+
+commit a55c024fc6b917a409b85aeafd7326421c4aea34
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-28 17:18:33 +0200
+
+ Subtile decoding: fix overflows in subband coordinate computation that cause later buffer overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3115. Credit to OSS Fuzz. master only
+
+commit 8f92fc97913bec7ffa2dc10d062c0cdd19da20e4
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-28 14:57:49 +0200
+
+ Make opj_set_decode_area() and opj_decode() take into account opj_set_decoded_resolution_factor() (#1006, affect API use)
- Changes in converttif.c for PPC64
+ * Better document usage of opj_set_decode_area(), ie expecting coordinates
+ in full resolution/reference grid even if requesting at a lower resolution
+ factor
+ * Make sure that image->comps[].factor is set by opj_set_decode_area() and
+ opj_decode() from the value specified in opj_set_decoded_resolution_factor()
+ * opj_decompress: add 2 environmenet variables to test alternate ways of
+ using the API, namely USE_OPJ_SET_DECODED_RESOLUTION_FACTOR=YES to use
+ opj_set_decoded_resolution_factor() instead of parameters.cp_reduce, and
+ SKIP_OPJ_SET_DECODE_AREA=YES to not call opj_set_decode_area() if -d is
+ not specified.
-commit 9f750884f91a4f1b9ca3e6a401057c21a7e2bd99
-Author: szukw000 <szukw000@arcor.de>
-Date: 2017-08-11 00:06:23 +0200
+commit 5a4a10120a648848de7522245f8671c3ce285dbc
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-24 14:38:24 +0200
- Changes in converttif.c for PPC64
+ Another cleanup in knownfailures-* files
-commit a35b4891340dcecf2b248c7e57a90bf7d7aa9b2f
+commit e0a5d148f7e84d18a52c97bd08b21b1dffa9570a
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-10 16:58:36 +0200
+Date: 2017-08-24 14:32:36 +0200
- Fix argument order in error message of previous commit
+ Remove test steps from specialized knownfailures- that are already in knownfailures-all.txt
-commit 0b4fef6d1901254e41ab74ed681daba477d724c3
+commit 79aa0b54ddd3e4e3ca09374cb82bd3302a65783a
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-10 16:49:47 +0200
+Date: 2017-08-24 14:31:13 +0200
- Propagate event manager down to opj_t2_encode_packet() and use it to emit an error message when the output buffer is too small
+ issue104_jpxstream.jp2 decompresses just fine (and like Kakadu). Update md5refs.txt and remove from knownfailures
-commit a316f36dfc7cc4217bfce0ac6d23b47f90cf8fd9
+commit c059f431e6262fe5ce296e8137dd478dfe4d1af1
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-10 14:43:16 +0200
+Date: 2017-08-24 14:09:34 +0200
- Fix crash on encoding if using opj_set_default_encoder_parameters() without defining tcp_numlayers
+ Remove broken.jpc test from known failures, by avoiding too long processing time
-commit a4c938181deb2cb48e408ac6e358062927060125
+commit 5146abc02ebd871aa1e737373cdc7654e8e4b07f
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-24 14:09:31 +0200
+
+ imagetopgx(): improve performance in 8 bit case (relates to broken.jpc test case)
+
+commit fdcd4e6365731cc1015213e424068131bcd1f31f
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-24 13:23:25 +0200
+
+ Remove -NR-DEC-p1_06.j2k-156-decode and NR-DEC-p1_06.j2k-164-decode from knownfailures
+
+ and make them explicit failures. The result images are empty at the requested resolution
+
+commit bc71bd1219269057ea18e6acbc77a96ec37aba82
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-10 12:30:31 +0200
+Date: 2017-08-23 18:58:32 +0200
- Reformat tests/test_tile_encoder.c
+ opj_dwt_decode_partial_97(): perf improvement: limit copy of coefficients at end of horizontal pass to actual range of interest
-commit 26fe8f60433aa677fd29590e7da23437c41e99c8
+commit 8180eeace13ffceef5dd7c3f80be156e36181846
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-08-10 11:45:49 +0200
+Date: 2017-08-21 23:06:53 +0200
- Improve doc of opj_tccp_info_t::cblkw and cblkh
+ test_tile_encoder: fix checks on argc
-commit 07c2fe28b0ef3dc9f168f2b2c449275ac1dde981
-Author: Antonin Descampe <antonin@gmail.com>
-Date: 2017-08-09 21:51:16 -0700
+commit c97666f72ba26a7ceb64931963b988a6f8f377f9
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-21 19:02:04 +0200
- Comment back previous version in abi-check.sh
+ j2k.c: fix comment, and remove FIXME
...</pre></div>