<br/>
<h1>Changelog from Git</h1><br/><br/>
<div class='changelog'>
-<pre class='wrap'>commit 7bdbe490cba9990916f94a40379cc787434340ff
+<pre class='wrap'>commit c67e1cd73f6c1fca081f5445af4f65b240c40edc
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-28 21:55:22 +0200
+Date: 2017-09-06 17:33:38 +0200
- Fix null pointer dereference in opj_jp2_apply_pclr(). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2558. Credit to OSS Fuzz
+ Fix invalid access out of bounds, and bad behaviour, when calling repeatdly opj_get_decoded_tile() on an image with a color palette
-commit 16aeb9282f6b3877aa8365c461ba8d3d1338adae
+commit 297f202104fc0ff6b0627e15e7e6883c915f80bf
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-28 21:39:30 +0200
+Date: 2017-09-06 16:49:28 +0200
- Fix null pointer dereference in opj_j2k_add_mct() (#895)
+ 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
- Fixes openjeg-crashes-2017-07-27/issue879-poc1.j2k of #895
+ This check was introduced per #939, but relied on the incorrect assumption
+ we decode all the tile parts of all tiles.
-commit c5bf5ef4d6552e9159aaad29cb27826acd1a3389
+commit 003759a4829f3f1baa5a2292956618fecf314818
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-28 21:29:55 +0200
+Date: 2017-09-06 15:59:19 +0200
- Avoid use-after-free when a MCT marker is found after a MCC one (#895)
-
- Fixes openjeg-crashes-2017-07-27/issue880-poc2.j2k of #895
-
-commit e03e9474667e5117341351699f0b1dbb06f93346
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-27 22:29:17 +0200
+ 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)
- Avoid undefined shift behaviour if bit depth == 32 (#895)
-
- Fixes openjeg-crashes-2017-07-27/id:000000,sig:11,src:003798,op:ext_AO,pos:128.jp2
-
-commit 820fcfe8bb101a2862c076b02c9b6b636ce39d2f
+commit e656822f927c869f31f2685c67644eacb75fc5d2
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-27 19:34:54 +0200
+Date: 2017-09-05 23:32:03 +0200
- opj_j2k_update_image_data / opj_tcd_update_tile_data: fix unaligned load/store (#895)
+ Add knownfailures-Ubuntu12.04-gcc4.6.3-x86_64-Release-3rdP.txt
- When components don't have the same width, unaligned load/store are possible.
+ 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
- Fixes openjeg-crashes-2017-07-27/id:000000,sig:11,src:001342,op:flip4,pos:162.jp2 of #895
+ The errors we get are the same as with the other x86_64 compilers, so nothing alarming here.
-commit 6c4e5bacb9d9791fc6ff074bd7958b3820d70514
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-27 19:22:14 +0200
+commit 968e36bbd989fdf789c6a02c80c747346bb851c5
+Merge: 3a382d3 579b893
+Author: Even Rouault <even.rouault@mines-paris.org>
+Date: 2017-09-05 22:18:58 +0200
- opj_pi_next_rpcl / opj_pi_next_pcrl / opj_pi_next_cprl: avoid int overflow (#895)
+ Merge pull request #1010 from rouault/subtile_decoding_stage3
- Fixes int overflow on openjeg-crashes-2017-07-27/id:000000,sig:08,src:000879,op:flip2,pos:128.jp2
+ Subtile decoding: memory use reduction and perf improvements
-commit 178194c093422c9564efc41f9ecb5c630b43f723
+commit 579b8937eae7e6b6868b8b5c6286a742c10a5130
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-27 18:51:51 +0200
+Date: 2017-09-04 17:35:52 +0200
- opj_jp2_check_color(): replace assertion regarding mtyp by runtime check (#672, #895)
-
- Fixes test case openjeg-crashes-2017-07-27/id:000000,sig:06,src:000001,op:flip1,pos:808.jp2
- of #895
+ Replace uses of size_t by OPJ_SIZE_T
-commit d6fa30099797c68c6a67decf58571dd59dbf734b
+commit 3a382d312306f45853b3ad78b770754d4bc7e440
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-26 23:25:38 +0200
+Date: 2017-09-03 00:30:36 +0200
- Avoids undefined shift behaviour in m_dc_level_shift computation
-
- Fixes warning found on clusterfuzz-testcase-minimized-5146316340461568
- https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2495
-
- Credit to OSS Fuzz
+ opj_getopt.c: avoid crash on invalid input (#301)
-commit a88cbb6a0b3539461dfb29922102953b7a7fc3a7
+commit e5ab1682a1bf52c203b16720011d869901929ac9
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-26 22:53:59 +0200
+Date: 2017-09-02 09:10:53 +0200
- Fix various undefined shift behaviour in pi.c
-
- Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2496
- Credit to OSS Fuzz
+ Improve error message when specifying a too big cp_reduce parameter (#474)
-commit 6c5fe9407b7768eb2ac55b83511bc103551d207a
+commit c1e0fba0c46cb528a08b89b986e86ff0f4792558
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-26 22:22:44 +0200
-
- Avoid potential undefined shift behaviour in opj_bio_read() from opj_t2_read_packet_header()
-
- Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2485
- Credit to OSS Fuzz
-
-commit dbf527bf2a53bc88e6cf1373991002ec0e8e22a1
-Merge: 5e795d9 94c4b73
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-07-26 22:05:32 +0200
+Date: 2017-09-01 22:09:58 +0200
- Merge pull request #800 from rouault/tier1_optimizations_multithreading_pterm_check
-
- Implement predictive termination check
+ opj_v4dwt_decode_step1_sse(): rework a bit to improve code generation
-commit 94c4b7300cc515330bf798bb45eb0d68e2c84aa0
+commit 676d4c807f0162877f9f32e4cdda2e242788d410
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-26 21:39:50 +0200
+Date: 2017-09-01 21:36:35 +0200
- T1 decoder: check code stream errors when predictable termination is enabled and emit a warning when errors are found
+ opj_j2k_update_image_data(): avoid allocating image buffer if we can just reuse the tile buffer one
-commit 5e795d90a1e47616e0c7a2e39381c13ccf7fd6dd
+commit 4c7effa6bc37beb2a8e2f29ecf5845cde93f6b88
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-26 21:06:38 +0200
+Date: 2017-09-01 21:17:26 +0200
- Spelling fixes (patch by ka7, #890, rebased on top of master)
+ opj_t1_clbl_decode_processor(): use SSE2 in subtile decoding code path, for irreversible
-commit 2be20ce7d9996e960d79f3ad6ec439a9895849ed
+commit 2c365fe0ecc8c6597db491a953a91308b1d0d4b1
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-26 21:04:01 +0200
+Date: 2017-09-01 20:43:39 +0200
- Reformat src/bin/wx/OPJViewer/source/OPJThreads.cpp src/bin/wx/OPJViewer/source/imagjpeg2000.cpp wrapping/java/openjp2/JavaOpenJPEG.c
+ 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 94cc97c58acfa574e734fac5eb673c516c0ac469
+commit 559d16e8f43a0cd090d217d7d111820989299b85
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-26 20:13:09 +0200
+Date: 2017-09-01 16:31:13 +0200
- opj_decompress: fix null pointer dereference on comps[].data on id_000167,sig_11,src_006079,op_havoc,rep_4 (#939)
+ opj_t1_decode_cblk(): move some code to codeblock processor for (theoretical) better multi-threading in subtile decoding
-commit 8d2e69e37d01bf6a0440d3109d92235c3c586ffe
+commit 7017e67a01c378a7a1ee5e34dd544c793b5c23e4
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-26 19:49:38 +0200
+Date: 2017-09-01 16:31:10 +0200
- Fix assertion / memory leak in opj_j2k_merge_ppt() on corrupted images (#939)
-
- Fixes issue on id:000020,sig:06,src:001958,op:flip4,pos:149 that has two
- SOT markers for the same tile with the same tile part number, causing
- opj_j2k_merge_ppt() to be called several times.
+ sparse_array: optimizations for lossy case
-commit 5c5319984b81e2aa32d1d83abdef0cdb8dbe7b18
+commit b428b8c7e7227cf96c83229df4d7bf009b6d2172
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-26 18:05:56 +0200
+Date: 2017-09-01 20:01:39 +0200
- Avoid division by zero in opj_pi_next_rpcl, opj_pi_next_pcrl, opj_pi_next_cprl (#938)
+ opj_tcd_rateallocate(): make sure to use all passes for a lossless layer (#1009)
- Fixes crash on id_000004,sig_06,src_000679,op_arith8,pos_49,val_-17
+ And save a useless loop, which should be a tiny faster.
-commit 80818c39f5bfbac37768fcee95b0ffeceaa77264
+commit 7aa071aa273aa0b8fafbf055e5eb99b9cb8600a8
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-26 12:24:26 +0200
+Date: 2017-09-01 19:49:01 +0200
- Avoid index out of bounds access to pi->include[] (#938)
-
- Fix id:000098,sig:11,src:005411,op:havoc,rep:2 test case
+ opj_j2k_setup_encoder(): emit warnings if tcp_rates are not decreasing or tcp_distoratio are not increasing (#1009)
-commit d27ccf01c68a31ad62b33d2dc1ba2bb1eeaafe7b
+commit a538815c774db94a0d3fa323c9ca4f456ef04903
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-26 11:30:56 +0200
-
- Avoid division by zero in opj_pi_next_rpcl, opj_pi_next_pcrl and opj_pi_next_cprl (#938)
-
- Fixes issues with id:000026,sig:08,src:002419,op:int32,pos:60,val:+32 and
- id:000019,sig:08,src:001098,op:flip1,pos:49
-
-commit 39e962a0ca5e53722f6badda8e93681aad412cf1
-Merge: 60f8ddf 90ced71
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-07-13 13:33:21 +0200
-
- Merge pull request #969 from jeroen/staticlibs
-
- install static libraries
+Date: 2017-09-01 19:27:56 +0200
-commit 90ced71601f05e87b4fa922261554eeeb11118b9
-Author: Jeroen <jeroenooms@gmail.com>
-Date: 2017-07-13 11:34:15 +0200
+ opj_j2k_setup_encoder(): avoid potential int overflow in computations related to max_cs_size
- install static libraries
-
-commit 60f8ddf577b20ccbb3dc0559b624115b9ba522ba
+commit 09929bb615bd6bf2a9f7703fc7b04a12096b091e
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-06 12:11:37 +0200
+Date: 2017-09-01 19:16:35 +0200
- Comment fix
+ 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 a38c4496b631bb5d3f8d5ea42d394544523a9bc6
+commit 32572617765cb9d77302384653a48d793b8f657f
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-05 21:33:42 +0200
+Date: 2017-09-01 17:32:54 +0200
- Remove unused m_DA_x0, m_DA_y0, m_DA_x1, m_DA_y1 members from opj_j2k_dec structure
+ opj_compress help: indicate 0 value, instead of 1, for -r parameter to get lossless encoding (#1009)
-commit 1a8eac6a90ca61f3703f9b97afc2ec4918f0ab55
+commit 8a17be8945f6f8fcae3f9e5c7c4988e971d245ee
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-03 14:14:03 +0200
+Date: 2017-09-01 16:31:08 +0200
- Add tests/fuzzers for OSS Fuzz (#965)
+ opj_v4dwt_decode_step2_sse(): loop unroll
-commit c308de39edc1697efbd5c10dc4852a58f9b86558
+commit 83b5a168ec0e89210671d60670c9a1143ce8776b
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-03 14:33:57 +0200
-
- opj_j2k_read_header_procedure(): validate marker size to avoid excessive memory allocation attempt
-
-commit 5736b1a3683261a5b31fc19a691731dc9fce5920
-Merge: ecbfcbc a0839cc
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-07-03 12:03:29 +0200
+Date: 2017-09-01 16:31:06 +0200
- Merge pull request #954 from jeroen/static
-
- build both shared and static library
+ opj_dwt_decode_partial_97(): simplify/more efficient use of sparse arrays in vertical pass
-commit ecbfcbc2764ff1b09e693d57e3ef5764518f1e1c
-Merge: e673c8b 96d757c
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-07-01 13:51:52 +0200
+commit ae19001ba425a9b396a29fba3417dccc746bd2ef
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-09-01 16:31:04 +0200
- Merge pull request #964 from rouault/remove_useless_knownfailures
-
- Remove useless knownfailures (since LAZY encoding is fixed)
+ opj_tcd_dc_level_shift_decode(): optimize lossy case
-commit e673c8bd4da9f0414da472ac5f3d8e03e5102982
-Merge: 8fa405e b992376
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-07-01 12:54:39 +0200
+commit 470f3ed416a8cc3618b2c04000ea7b4694043f34
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-09-01 16:31:02 +0200
- Merge pull request #963 from rouault/travis_avx2
-
- Enable AVX2 at runtime on Travis-CI and AppVeyor
+ opj_dwt_decode_partial_1_parallel(): add SSE2 optimization
-commit b9923764da198742c635ad7dff9de158c3dbb60d
+commit 873004c615b1bed3ce780e869288602af86fdee5
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-01 04:15:36 +0200
+Date: 2017-09-01 16:31:00 +0200
- Add tools/travis-ci/knownfailures-Ubuntu14.04-clang3.8.0-x86_64-Release-3rdP.txt (copied from knownfailures-Ubuntu12.04-clang3.9.0-x86_64-Release-3rdP.txt)
+ Sub-tile decoding: speed up vertical pass in IDWT5x3 by processing 4 cols at a time
-commit f194ff32ac3fd5bab88607ea6bf09a73adb99758
+commit ccac773556070ede24ea3dfbdec47c2b3c5be5c4
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-01 02:53:55 +0200
+Date: 2017-09-01 16:30:58 +0200
- appveyor.yml: add a /arch:AVX2 config on Windows
-
- Try running the tests if the CPU supports AVX2.
+ Tiny perf improvement in T1 stage for subtile decoding
-commit 96d757cb8e6c3fb0e133817e5057ee5eae6a594d
+commit 18635df518602265b71da3c70c4d3b774bc3dfc2
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-01 04:24:46 +0200
+Date: 2017-09-01 16:30:56 +0200
- Remove useless knownfailures (since LAZY encoding is fixed)
+ test_decode_area: accept user bounds in -strip_height mode
-commit 69a001819c9ac36bb3210e475d099cc2abbbf89f
+commit 82a43d8035ca5f43e198e15faef6c9ac44b39541
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-01 01:46:55 +0200
+Date: 2017-09-01 16:30:54 +0200
- .travis.yml: try to run tests in -mavx2 mode if the CPU supports it
-
- And modify settings so as to hae a AVX2 compatible CPU
+ Optimize opj_dwt_decode_partial_1() when cas == 0
-commit 8fa405ee15b5151df40d8d96460257ee5b510135
+commit 1644665a9105e2d761e8b29f43af602560e6bcf9
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-30 00:03:05 +0200
+Date: 2017-09-01 16:30:52 +0200
- IDWT 5x3: fix bug in AVX2 implementation (#953, #957)
+ opj_j2k_update_image_data(): avoid zero-ing the buffer if not needed
-commit 6239ed7be41d370c537ca43e198cf2fdc6eb9a60
+commit b2cc8f7f81242f967b65e76de043e5e31663d793
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-26 13:13:26 +0200
+Date: 2017-09-01 16:30:50 +0200
- INSTALL.md: add section discussing how to enable CPU specific optimizations
+ Optimize reading/write into sparse array
-commit 533fa2fdee4f69a5d7bb8f0b1c0a8f432dad334f
-Merge: 6026786 4fe7620
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-06-26 12:45:34 +0200
+commit 0ae3cba3404674bbe2028ea9a801301a4c951b33
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-09-01 16:30:48 +0200
- Merge pull request #957 from rouault/idwt_53_improvements
+ Allow several repeated calls to opj_set_decode_area() and opj_decode() for single-tiled images
- IDWT 5x3 single-pass lifting and SSE2/AVX2 implementation
+ * 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 60267860698b86e215bee584857e6b4f2f08b693
+commit 5d07d463fdb0a5eeffa90eba1566cc21697011b8
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-21 13:20:35 +0200
+Date: 2017-09-01 16:30:45 +0200
- Style fix
+ opj_j2k_decode_tiles(): apply whole single tile image decoding optimization to reading at reduced resolution as well
-commit 93aca84731bfffb20e968af10055a8cd0401806e
+commit 98b93103613c90753fb6c57696f9403f8ea0b1d6
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-21 12:54:40 +0200
+Date: 2017-09-01 16:30:44 +0200
- Fix mingw related warnings
+ Various changes to allow tile buffers of more than 4giga pixels
+
+ 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 cdd3e83bae71e1e023c4c2bdd5e52d082576e550
+commit 008a12d4fce0a7b1eabc51e04ed339be759646e2
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-21 12:49:01 +0200
+Date: 2017-09-01 16:30:41 +0200
- Fix clang warning about extraneous parentheses
+ TCD: allow tile buffer to be greater than 4GB on 64 bit hosts (but number of pixels must remain under 4 billion)
-commit 4fe7620d4adc131c3ff93bb47bb8d138d69c9cbd
+commit d1299d9670d766006a7a162a770d3b70eaeef9bd
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-21 12:28:51 +0200
+Date: 2017-09-01 16:30:39 +0200
- .travis.yml: add a configuration to test compilation of AVX2 (but disable tests since Travis doesn't have AVX2 compatible machines)
+ Fix compiler warning in release mode
-commit fd0dc535ad9ae0d369d1039aaf56235583ca64ea
+commit d5153ba404fa13b9c6e7b2c20d4d128aac718fba
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-21 12:12:58 +0200
+Date: 2017-09-01 16:30:37 +0200
- IDWT 5x3: generalize SSE2 version for AVX2
-
- Thanks to our macros that abstract SSE use, the functions can use
- AVX2 when available (at compile time)
+ Remove limitation that prevents from opening images bigger than 4 billion pixels
- This brings an extra 23% speed improvement on bench_dwt in 64bit builds
- with AVX2 compared to SSE2.
+ 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.
-commit f6e3475cc9328e5378e96e72b5adf29fb07c5feb
+commit c37e360a5112b5471168e429159f61b74c0c2f58
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-21 01:07:56 +0200
+Date: 2017-09-01 16:30:35 +0200
- dwt.c: small cleanup
+ opj_tcd_init_tile(): fix typo on overflow detection condition (introduced in previous commit)
-commit f06cfadef8e2b1ad9008957cc6bc80a27c53f2eb
+commit eee5104a8885227167a349b6dabdb1f72a04d9d0
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-20 18:24:21 +0200
+Date: 2017-09-01 16:30:32 +0200
- Enable __SSE__ / __SSE2__ with Visual Studio
+ opj_dwt_decode_partial_tile(): avoid undefined behaviour in lifting operation by properly initializing working buffer
-commit fa55b52d19f39765d7f108d654a8f87035a5772f
+commit f9e9942330f476b66ac4a35d0ae521200878f343
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-20 17:56:25 +0200
+Date: 2017-09-01 16:30:29 +0200
- Improve performance of inverse DWT 5x3 (#953)
+ Sub-tile decoding: only allocate tile component buffer of the needed dimension
- * Use single-pass lifting inverse wavelet transform.
- * For vertical pass, use SSE2 when available so as to process 8 columns
- in parallel. This is the most beneficial improvement, since the
- vertical pass involves a lot of cache trashing.
+ Instead of being the full tile size.
- With the bench_dwt utility with default arguments (16383x16383 image),
- time goes from 4.064 s to 1.212 s.
+ * Use a sparse array mechanism to store code-blocks and intermediate stages of
+ IDWT.
+ * IDWT, DC level shift and MCT stages are done just on that smaller array.
+ * Improve copy of tile component array to final image, by saving an intermediate
+ buffer.
+ * For full-tile decoding at reduced resolution, only allocate the tile buffer to
+ the reduced size, instead of the full-resolution size.
-commit 919ed5f8b8681aeae54ce3884b3ecca56cadc2e0
+commit aa7198146b995fe2993ce24f5715057b7da0386d
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-20 17:56:19 +0200
-
- Add bench_dwt program (compiled only if BUILD_BENCH_DWT=ON)
+Date: 2017-08-21 23:21:39 +0200
-commit 5c56933daf1da88aa6f2a8c8dc5fcc7b1d76cb00
-Merge: 32b20b9 8df2521
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-06-18 00:49:20 +0200
-
- Merge pull request #955 from rouault/remove_opj_nosanitize
-
- Remove OPJ_NOSANITIZE in opj_bio_read() and opj_bio_write() (#761)
+ opj_compress: reorder checks related to code block dimensions, to avoid potential int overflow
-commit 8df2521a6015af7f69a378811986ddb0b3bfbd3a
+commit 0a25dceca7761ee3f16cbb2ced87b915a948b25e
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-17 19:15:00 +0200
+Date: 2017-08-21 23:20:51 +0200
- Remove OPJ_NOSANITIZE in opj_bio_read() and opj_bio_write() (#761)
-
- Commit 29313eb5 introduced those flags to avoid issues with
- -fsanitize=unsigned-integer-overflow
- However it is better just to rewrite the loop to avoid such condition
- to occur.
+ opj_j2k_setup_encoder(): validate code block width/height
-commit 32b20b93e04d38303f736e975eb5f483fda01ca5
+commit 84bbb4a8743a93d567f40d7233d5196105c8d84e
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-17 16:37:56 +0200
+Date: 2017-08-21 23:12:45 +0200
- Fix astyle issue
+ opj_t1_allocate_buffers(): remove useless overflow checks
-commit 5f596cb2833d5ea7a4d04d22af551731bd770f05
+commit 6ce49bf5aebb3c45c464fa82d14cfd4bf7026a28
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-17 14:10:15 +0200
+Date: 2017-09-01 10:26:18 +0200
- Fix warning about unused arguments
+ 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
-commit cc07aec6c7b50090c3f471ca2c68d0ffa8aa4ff1
+commit 04b70908a7ada29481d2e1903b76f44a68d4d268
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-17 14:09:31 +0200
+Date: 2017-08-29 11:40:53 +0200
- Fix warnings with recent GCC versions
+ Use IDWT whole tile decoding if the area of interest equals to the image bounds, taking into account the reduced resolution factor
-commit a0839cca24e19f1f0906e30ee1009ce89e4942b4
-Author: Jeroen Ooms <jeroenooms@gmail.com>
-Date: 2017-06-16 13:58:25 +0200
+commit 4776b15fa7ec2afa74f65cd471f94513ea08205a
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-28 18:07:44 +0200
- only build both static and dynamic on non-windows
+ Add test for fix of a55c024fc6b917a409b85aeafd7326421c4aea34
-commit 1329b3240aafb1b31328091eb6f7720787b391be
-Author: Jeroen Ooms <jeroenooms@gmail.com>
-Date: 2017-06-16 13:27:19 +0200
+commit a55c024fc6b917a409b85aeafd7326421c4aea34
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-28 17:18:33 +0200
- build both shared and static library
+ 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 36dd87cea80ad56e0e3178221aa579a28f02a549
-Merge: 9cbc990 5f1e380
-Author: Antonin Descampe <antonin@descampe.net>
-Date: 2017-06-14 17:23:06 +0200
+commit 8f92fc97913bec7ffa2dc10d062c0cdd19da20e4
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-28 14:57:49 +0200
- Merge pull request #928 from RussellMcOrmond/master
+ Make opj_set_decode_area() and opj_decode() take into account opj_set_decoded_resolution_factor() (#1006, affect API use)
- Quiet mode for opj_decompress via -quiet long parameter.
+ * 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 9cbc9903c3034d1a101d0521402503ead0abcff0
-Merge: 2609fb8 9a9b069
+commit 5a4a10120a648848de7522245f8671c3ce285dbc
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-13 12:09:52 +0200
+Date: 2017-08-24 14:38:24 +0200
- Merge branch 't1_flag_optimizations'
+ Another cleanup in knownfailures-* files
-commit 2609fb8077125b5b31f1bcc2f98c12ff1e6572d7
+commit e0a5d148f7e84d18a52c97bd08b21b1dffa9570a
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-12 17:15:23 +0100
+Date: 2017-08-24 14:32:36 +0200
- Packet header writing: set empty packet header bit to 0 when appropriate (small optimization)
+ Remove test steps from specialized knownfailures- that are already in knownfailures-all.txt
-commit 73d1510d473b7dcfccfdee57e0e511e6791d5091
+commit 79aa0b54ddd3e4e3ca09374cb82bd3302a65783a
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-12 11:23:55 +0100
+Date: 2017-08-24 14:31:13 +0200
- Encoder: fix packet writing of empty sub-bands (#891, #892)
-
- There are situations where, given a tile size, at a resolution level,
- there are sub-bands with x0==x1 or y0==y1, that consequently don't have any
- valid codeblocks, but the other sub-bands may be non-empty.
- Given that we recycle the memory from one tile to another one, those
- ghost codeblocks might be non-0 and thus candidate for packet inclusion.
+ issue104_jpxstream.jp2 decompresses just fine (and like Kakadu). Update md5refs.txt and remove from knownfailures
-commit 81c5311758a0ae1f1aea349a6ee0bca2a238fa79
+commit c059f431e6262fe5ce296e8137dd478dfe4d1af1
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-09 10:47:13 +0200
+Date: 2017-08-24 14:09:34 +0200
- T1: fix BYPASS/LAZY, TERMALL/RESTART and PTERM/ERTERM encoding modes. (#674)
-
- There were a number of defects regarding when and how the termination of
- passes had to done and the computation of their rate.
+ Remove broken.jpc test from known failures, by avoiding too long processing time
-commit 9a9b06911e164bdc854cf6b9c3bc5b6e751bf46d
+commit 5146abc02ebd871aa1e737373cdc7654e8e4b07f
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-02 19:22:15 +0200
+Date: 2017-08-24 14:09:31 +0200
- opj_t1_dec_sigpass_raw/opj_t1_dec_refpass_raw: harmonize style with mqc methods
+ imagetopgx(): improve performance in 8 bit case (relates to broken.jpc test case)
-commit 532243f1fd9997db63ea7f6b199d21138ccf58a3
+commit fdcd4e6365731cc1015213e424068131bcd1f31f
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-02 16:49:26 +0200
+Date: 2017-08-24 13:23:25 +0200
- MQC/RAW decoder: use an artificial 0xFF 0xFF terminating marker.
+ Remove -NR-DEC-p1_06.j2k-156-decode and NR-DEC-p1_06.j2k-164-decode from knownfailures
- This saves comparing the current pointer with the end of buffer pointer.
- This results at least in tiny speed improvement for raw decoding, and
- smaller code size for MQC as well.
-
- This kills the remains of the raw.h/.c files that were only used for
- decoding. Encoding using the mqc structure already.
+ and make them explicit failures. The result images are empty at the requested resolution
-commit 9b39fc4bccb3e9e4e9a9f61c4dc672fb7f05d865
+commit bc71bd1219269057ea18e6acbc77a96ec37aba82
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-02 14:32:12 +0200
+Date: 2017-08-23 18:58:32 +0200
- Fix documentation of opj_t1_decode_cblks()
+ opj_dwt_decode_partial_97(): perf improvement: limit copy of coefficients at end of horizontal pass to actual range of interest
-commit dde6cbabc0cb93102c2091c15d11dec1267d0fd8
+commit 8180eeace13ffceef5dd7c3f80be156e36181846
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-02 14:25:57 +0200
+Date: 2017-08-21 23:06:53 +0200
- Simplify VSC handling: instead of masking out bits when reading the 4th row.
-
- Do not set them when updating flags of the 1st row
+ test_tile_encoder: fix checks on argc
-commit 3d9940a35b8c566c1fb41db56018c91b511a976a
+commit c97666f72ba26a7ceb64931963b988a6f8f377f9
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-02 11:52:16 +0200
+Date: 2017-08-21 19:02:04 +0200
- Force inlining of mqc decoding and pass steps through heavy use of macros, so as to get better register allocation
+ j2k.c: fix comment, and remove FIXME
-commit 7e8b502842075738c9a062a2f06dace3f35dd7cd
+commit 24d069e3ffa2286930a2e7e2638431ea1de6846a
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-02 09:36:25 +0200
+Date: 2017-08-21 17:19:13 +0200
- t1_generate_luts.c: fix compiler warnings
+ Add comment
-commit 2ba861c37cb5032d1fa90a7c9298f6e08a0f5413
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-01 19:42:03 +0200
+commit e9bbc6d3dde946bdb5195f053f24b91335d5d84c
+Merge: 3eed024 17a7ac4
+Author: Even Rouault <even.rouault@mines-paris.org>
+Date: 2017-08-21 13:02:07 +0200
- Optimize opj_t1_update_flags()
+ Merge pull request #1001 from rouault/subtile_decoding_stage2
+
+ Subtile decoding: only apply IDWT on areas that participate to the window of interest
-commit a0861855c11bcb8c93f399ca51e766b5c8ef9e33
+commit 17a7ac42d581c537cfc1da4324e53047ad82b13e
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-01 17:02:50 +0200
+Date: 2017-08-21 12:25:38 +0200
- T1: remove use of neghalf variable. It is useless since bpno is always > 0
+ Add comments for filter_width values
-commit 10410fe72ec2d20f2bbdfb68a383bce1df17f35d
+commit f87c5ef7ebef3d7a908e98f2de1b6a0336ae57ae
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-01 11:15:25 +0200
+Date: 2017-08-20 22:02:41 +0200
- T1: avoid pointer indirection for mqc and raw members of opj_t1_t
+ Subtile decoding: only do 9x7 IDWT computations on relevant areas of tile-component buffer.
-commit a5003787ffdbc4fb4a9b4e18187e9f69c36b9e9b
+commit 3eed024eb45534f86537404e08d08fa572a40782
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-01 10:23:30 +0200
+Date: 2017-08-19 15:45:54 +0200
- T1: remove flags_stride variable from opj_t1_t
+ pgxtoimage(): avoid excessive memory allocation attempt (#999)
-commit 0ec842e1f1e6ebc80df5308cab457372456b204d
+commit 5d403250561398f7ba3041d9eb8c893bd680dd72
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-31 19:45:03 +0200
+Date: 2017-08-18 15:08:51 +0200
- Inline opj_raw_decode()
+ Subtile decoding: only do 5x3 IDWT computations on relevant areas of tile-component buffer.
+
+ This lowers 'bin/opj_decompress -i ../MAPA.jp2 -o out.tif -d 0,0,256,256'
+ down to 0.860s
-commit aa7a8a4398b3792b4a52fb443d49d317a9a4984f
+commit e5285319229a5d77bf316bb0d3a6cbd3cb8666d9
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-31 17:15:27 +0200
+Date: 2017-08-18 13:39:20 +0200
- T1: loop unrolling in dec_sigpass_raw and dec_refpass_raw
+ pgxtoimage(): fix write stack buffer overflow (#997)
-commit 68557ff5036e68112bcbf194d2a7f48b1f58b752
+commit 028c504a43e962a725c4fd73d6642ee73c653e1b
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-31 14:35:56 +0200
+Date: 2017-08-18 12:30:11 +0200
- T1: Transpose coder optimizations to decoder, and cleanup code
+ test_decode_area: fix to make it work with odd image dimensions
-commit 1957a498b68af12bfa8d382f96e54f8403bb2fb6
+commit 5597522cac96b1bc6d48a447751b1c6049248eef
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-23 14:55:45 +0200
+Date: 2017-08-18 10:16:38 +0200
- Fix compiler warnings
+ bmp_read_rle8_data(): avoid potential infinite loop (#996)
-commit 40c0f42def262ed76e2f0048d09aab9e0ee1af02
+commit 5d12806091eab0659431fefcefdb797b09f8e884
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-23 13:02:24 +0200
+Date: 2017-08-17 19:18:48 +0200
- Factor index computation for lut_enc_ctxno_sc and lut_enc_spb
+ opj_j2k_update_rates(): grow tile size buffer for some situations
-commit d6907b93044108aacc6ab9281a7a9ab48546824c
+commit 4b0bfbfabc3ce1cc4c6d18dc7113b9f6335372d4
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-23 00:40:30 +0200
+Date: 2017-08-17 16:07:19 +0200
- Optimize a bit opj_t1_enc_clnpass()
+ Zero-initialize tile buffer regions of skipped code-blocks, so as to make Valgrind happy
-commit c76a59213100bbec567a0c78b7b1b8ba82d1e1fa
+commit fe338a057c39797bf61939471ebaef09e44464c7
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-22 23:30:30 +0200
+Date: 2017-08-14 13:23:57 +0200
- T1: remove unused code in decoder
+ Sub-tile decoding: only decode precincts and codeblocks that intersect the window specified in opj_set_decode_area()
-commit 4068363ff5021608180f712823db55d9c0a551e6
+commit 17ea17f487a777d14bd322ac06c4e6cb9124a226
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-22 18:42:46 +0200
+Date: 2017-08-17 19:05:29 +0200
- T1: fix VSC mode in encoder
+ Fix -Wconversion warning
-commit cd12414c6b11295ae8540df2ef77eb9c624cd264
+commit fd8448ed446a935da3210821a783e794ede3c599
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-20 14:05:07 +0200
-
- T1: use more compact flags to optimize cache usage in encoder passes. (#172)
-
- Ported from Carl Hetherington work (actually through Matthieu Darbois's port
- on top of OpenJPEG 2.1.0)
-
- Can reduce total encoding time by 10-15%
-
- WARNING: VSC mode is not implemented, and so is a temporary regression
- that must be fixed.
-
-commit 53d46fc7330ed652db66aa37b498fbfa27be625c
-Merge: 6e97d87 a8ca7c5
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-23 16:15:55 +0200
+Date: 2017-08-17 17:04:48 +0200
- Merge pull request #936 from rouault/master_warnings
-
- CMake: add stronger warnings for openjp2 lib/bin by default, and error out on declaration-after-statement
+ bench_dwt.c: fix signedness related warnings
-commit a8ca7c51f38a4cbdcb4a541137478df03e5eb76d
+commit da046b73a89806eae2f7f461c2a46bda7e07aaa8
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-23 15:12:19 +0200
-
- CMake: add stronger warnings for openjp2 lib/bin by default, and error out on declaration-after-statement
-
- And remove occurences of unused arguments in src/lib/openjp2
+Date: 2017-08-17 17:02:40 +0200
-commit 6e97d877b155aff55d1ae1fef4a36fa56d51e472
-Merge: 8728cfb 2d2c368
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-23 14:49:38 +0200
-
- Merge pull request #935 from rouault/add_compress_vsc_test
-
- Tests: test opj_compress in VSC mode (related to #172)
+ convert.c: fix recently introduced -Wsign-conversion warnings
-commit 2d2c368b19ee59cba7470c94bcc2c06ca6db1d80
+commit 9f7d79fd30df3712e6bfc6d475bfa143c069c4df
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-23 13:46:04 +0200
+Date: 2017-08-17 14:52:10 +0200
- Tests: test opj_compress in VSC mode (related to #172)
+ opj_getopt_long(): avoid infinite loop on invalid or missing value for an option (#736)
-commit 8728cfbc799a61dd0600ee04aa64d829937d8710
+commit 1ab6e0e07a67193564811c5720a69cb28f09a809
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-23 13:54:28 +0200
-
- t1.c: fix compiler warnings
-
-commit 5f1e380b5155577864a84c1e64f213b6d9f83334
-Author: Russell McOrmond <russell.mcormond@canadiana.ca>
-Date: 2017-05-16 09:31:07 -0400
-
- Fixed formatting issues ASTYLE
+Date: 2017-08-17 12:01:16 +0200
-commit 9d8e1ecdeb99b1e4b4ffd19feb152c88fe4f83ba
-Author: Russell McOrmond <russell.mcormond@canadiana.ca>
-Date: 2017-05-15 14:39:54 -0400
+ 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
- Quiet mode for opj_decompress via -quiet long parameter.
-
-commit 83d7a6d4a44833e78321bfd367dc0f822a8d0945
+commit 2cd30c2b06ce332dede81cccad8b334cde997281
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-15 14:11:47 +0200
+Date: 2017-08-17 11:47:40 +0200
- MQC: remove disabled MQC_PERF_OPT mode, which brings no performance improvements (see #923)
+ tgatoimage(): avoid excessive memory allocation attempt, and fixes unaligned load (#995)
-commit 4431fa72657b6c4a92c3cf29cfc5c8df69424a0e
+commit 09e83407fa2b53c606d3179031b8d8b31272e20c
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-15 14:09:51 +0200
-
- Add comments about non successfull attempt of implementing alternate INITDEC, DECODE and BYTEIN procedures (refs #921)
-
-commit f7a126af61877cd4623327142521d82a0c19430d
-Merge: 28d2eab 3c2972f
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-15 13:08:03 +0200
+Date: 2017-08-17 11:05:53 +0200
- Merge pull request #926 from rouault/reformat_h_files
-
- Reformat: apply reformattin on .h files (#128)
+ 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
-commit 3c2972f924857016bb454201c7e92f25de9105ee
+commit 8e6c371e66d9c579048fd336cc3365869486080a
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-15 12:21:30 +0200
+Date: 2017-08-16 18:29:59 +0200
- Reformat: apply reformattin on .h files (#128)
+ 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)
-commit 28d2eabca79d06378843d1e94fecfb4a5e22178d
-Merge: 0ecac46 cde210b
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-15 12:09:45 +0200
+commit 1e387de74273c4dac618df94475556541c1caf3e
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-16 17:38:47 +0200
- Merge pull request #919 from rouault/reformat
-
- Add mechanisms to reformat and check code style, and reformat whole codebase (#128)
+ Fix build issue of JPWL by adding opj_image_data_alloc() and opj_image_data_free() to src/lib/openmj2 (#994)
-commit 0ecac46a1db911cbe340c4467000e91cea82c96d
+commit c535531f03369623b9b833ef41952c62257b507e
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-11 20:18:42 +0200
+Date: 2017-08-16 17:20:29 +0200
- perf_test.py: implement -i option
+ opj_t2_encode_packet(): fix potential write heap buffer overflow (#992)
-commit cde210be392d60fbcd8a3e7cacfa62660a95e8d9
+commit dcac91b8c72f743bda7dbfa9032356bc8110098a
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-11 11:21:37 +0200
+Date: 2017-08-16 17:09:10 +0200
- astyle.options: use non deprecated option name
+ opj_j2k_write_sot(): fix potential write heap buffer overflow (#991)
-commit 563bd8499e63db976ca8358216138647593354bc
+commit af760007711bf93041d3eba3a41b9a48d365f303
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-09 15:44:46 +0200
+Date: 2017-08-16 13:36:52 +0200
- Reformat whole codebase with astyle.options (#128)
+ 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.
-commit d4e54e9f35d532062533f1d369c159810b01d224
+commit ab4de904e7dc1deee83122cd2bf6e0e7f4eb2eb0
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-09 15:28:09 +0200
+Date: 2017-08-16 13:11:36 +0200
- Add mechanisms to reformant and check code style (#128)
-
- Use an internal version of astyle (astyle 3.0). Scripts taken from QGIS.
- astyle.options from https://github.com/uclouvain/openjpeg/issues/128
-
- scripts/prepare-commit.sh can be used locally to automatically reformat
- edited files.
-
- Travis-CI will run scripts/verify-indentation.sh to verify committed files.
+ imagetotga(): fix read heap buffer overflow if numcomps < 3 (#987)
-commit 8650b70e06408d394c1708846b6fc2d86cf14079
-Merge: e92fe29 05d5845
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-09 13:16:53 +0200
+commit 9624b2fa4722edf77fbac631e7dacaae12c91672
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-16 12:52:33 +0200
- Merge pull request #918 from rouault/profile
-
- Add profiling of CPU and memory usage (#912)
+ opj_t2_encode_packet(): only emit an error about insufficiently large output buffer in FINAL_PASS mode. Fixes (master-only) regression added in 0b4fef6d1901254e41ab74ed681daba477d724c3
-commit 05d58451a1221ba95db8fb1d159eb0f76dbafb22
+commit 4241ae6fbbf1de9658764a80944dc8108f2b4154
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-06 15:06:24 +0200
+Date: 2017-08-15 11:55:58 +0200
- Add profiling of CPU and memory usage (#912)
+ Fix assertion in debug mode / heap-based buffer overflow in opj_write_bytes_LE for Cinema profiles with numresolutions = 1 (#985)
-commit e92fe29016300e7ae9ccfa6e9cf5422456f57e25
-Merge: 20291aa 328f076
+commit 52d5690a6fcba86b5f117eeac8aca1971cac3688
+Merge: baf0c1a bc59410
Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-09 12:33:07 +0200
+Date: 2017-08-14 17:28:26 +0200
- Merge pull request #917 from rouault/bench
+ Merge pull request #984 from stweil/const
- Add performance benchmarking scripts
+ Use more const qualifiers
-commit 328f076d2639d8664436e2b620cf9eed4f7dee53
+commit baf0c1ad4572daa89caa3b12985bdd93530f0dd7
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-04 15:22:14 +0200
-
- Add performance benchmarking scripts
-
- And run them by Travis-CI
-
-commit 20291aad07591da40ac86e5f5a87b4f6d154ba6a
-Merge: a18040e 04980a8
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-03 12:41:02 +0200
+Date: 2017-08-14 17:26:58 +0200
- Merge pull request #915 from rouault/appveyor_fix_attempt
-
- Fix retrieval of jpylyzer in AppVeyor
+ bmp_read_info_header(): reject bmp files with biBitCount == 0 (#983)
-commit 04980a8c7b6c260394084ab12b4bdee957caa24f
+commit afb308b9ccbe129608c9205cf3bb39bbefad90b9
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-03 12:03:00 +0200
+Date: 2017-08-14 17:20:37 +0200
- Fix retrieval of jpylyzer in AppVeyor
+ Encoder: grow buffer size in opj_tcd_code_block_enc_allocate_data() to avoid write heap buffer overflow in opj_mqc_flush (#982)
-commit a18040e02238c577cf7853a0e303cbca62e044a8
-Merge: e7ff1ef a43f1be
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-03 11:48:02 +0200
+commit bc59410f253b0cd3d4818ec06ce957cbdbfe4341
+Author: Stefan Weil <sw@weilnetz.de>
+Date: 2017-08-14 14:36:06 +0200
- Merge pull request #893 from rouault/remove_tagtree_warnings
+ Use const qualifier for mqc_states
- Remove warnings related to empty tag-trees.
+ This allows more compiler optimizations.
+
+ Signed-off-by: Stefan Weil <sw@weilnetz.de>
-commit e7ff1efb82fab7ba6c6d69e7d286811abb4ee7e7
-Merge: 807da62 cf08763
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-03 11:46:45 +0200
+commit 10e6ce2c2cfacf51fdde7e9c69bf2365840f4bb0
+Author: Stefan Weil <sw@weilnetz.de>
+Date: 2017-08-13 22:57:31 +0200
- Merge pull request #899 from jwilk/man-warnings
+ Use const qualifier for j2k_prog_order_list
+
+ This allows more compiler optimizations.
- Remove spurious .R macros from manpages
+ Signed-off-by: Stefan Weil <sw@weilnetz.de>
-commit 807da629a6e00a06a3d2506c3f99da1757252c43
-Merge: 8c33128 4927b64
+commit 0b4c3ce75d11600ebc6675bd871f78ca3c95bc60
Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-03 11:46:01 +0200
+Date: 2017-08-11 15:13:35 +0200
- Merge pull request #914 from alexwlchan/fix-readme
+ Merge pull request #980 from szukw000/changes-for-ppc64-converttif
- Escape quotes to ensure README renders on GitHub correctly
+ Changes in converttif.c for PPC64
...</pre></div>