Update ABI/API compatibility reports after commit ce199f42e77f972d6ee782b63492f6d8618...
[openjpeg.git] / abi-check / changelog / openjpeg / current / log.html
index c5e34207a004abc08025f57843c662fe5ed41afc..34480e28b42eb9f6510925c798b7eeb7cdb7ab6c 100644 (file)
 <br/>
 <h1>Changelog from Git</h1><br/><br/>
 <div class='changelog'>
-<pre class='wrap'>commit 3fbe71369019df0b47c7a2be4fab8c05768f2f32
+<pre class='wrap'>commit ce199f42e77f972d6ee782b63492f6d861891053
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-29 18:38:16 +0200
+Date:   2017-09-19 12:48:12 +0200
 
-    opj_tcd_get_decoded_tile_size(): fix potential UINT32 overflow (#854, CVE-2016-5152)
-    
-    Fix derived from https://pdfium.googlesource.com/pdfium.git/+/d8cc503575463ff3d81b22dad292665f2c88911e/third_party/libopenjpeg20/0018-tcd_get_decoded_tile_size.patch
-
-commit 5a3e7aaf339943bc988adbada39a1fc8f5046899
-Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-29 17:56:12 +0200
+    src/bin/jp3d/convert.c: add missing fclose() in error code path (#1018)
 
-    color_cielab_to_rgb(): reject images with components of different dimensions to void read heap buffer overflow (#909)
-
-commit 784d4d47e97b5d0fccccbd931349997a0e2074cc
+commit fdef69b43ce5222ac0f2a87f2fad1442ece340e8
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-29 17:51:10 +0200
+Date:   2017-09-19 12:46:20 +0200
 
-    Fix breakage of 2fa0fc61f2d546c8b67e7c5a9cbc61d98e1f7af0 (#970)
+    Fix warnings and errors when compiling with a c++ compiler (#1021)
 
-commit 2fa0fc61f2d546c8b67e7c5a9cbc61d98e1f7af0
+commit 18f6696372f4c32334385f8dcc8d39ad8ac24601
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-29 17:28:55 +0200
+Date:   2017-09-19 12:13:34 +0200
 
-    imagetopnm(): make sure the alpha component has same dimension as other components to avoid read heap buffer overflow (#970)
+    Fix compilation with AppleClang 8.1.0.8020042 (#1020)
 
-commit db9ef99f6dd054a84fa8382c02869fb0656abfc8
+commit 3dfc6ca2bcf06fd1adb6b6b4cecc6c092f08ba0b
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-29 16:34:35 +0200
+Date:   2017-09-17 12:17:49 +0200
 
-    opj_t1_decode_cblk(): avoid undefined shift behaviour. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2487. Credit to OSS Fuzz
+    Build: make sure that -DBUILD_SHARED_LIBS:bool=off is honoured to build only the static lib (#1019)
 
-commit f6551f822fe020843299bd807ec6989abd070b2c
+commit 28094e1ebfa420f9a0bdc7a11b8d4ee5f154db35
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-29 16:29:11 +0200
+Date:   2017-09-08 10:56:49 +0200
 
-    opj_t1_clbl_decode_processor(): avoid undefined behaviour if roishift &gt;= 31. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2506. Credit to OSS Fuzz
+    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 9906fbf737692486cebabe98169988d818e2e66a
+commit 33167ddc13fd20313ccfcdc64141000407b68b8f
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-29 16:22:36 +0200
+Date:   2017-09-08 09:53:52 +0200
 
-    Avoid assertion in opj_j2k_merge_ppt() in case premature EOC is encountered in opj_j2k_read_tile_header(). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2785. Credit to OSS Fuzz
+    opj_j2k_update_image_data(): restrict optimized path
 
-commit 71b4f5b124d14ed609763b11e19d2d480bc32f58
+commit b73ce715d2a484d7355639d863d0418a0e5b8858
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-29 15:52:11 +0200
+Date:   2017-09-08 09:16:51 +0200
 
-    opj_pi_next_pcrl(): avoid undefined shift behaviour. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2787. Credit to OSS Fuzz
+    Use opj_image_data_free() where appropriate (adapted from https://github.com/uclouvain/openjpeg/pull/1015/commits/dab9db0723a5bb9f3d745f9dd7a0b8b3b18b8054, #1014)
 
-commit d6654d906c1ae66590b6d600458a91f1ee923de5
+commit 5abd86b14bb26d1882ee1c07b03f809f85162a5d
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-28 22:15:47 +0200
+Date:   2017-09-07 18:01:33 +0200
 
-    opj_int_ceildiv(): fix int32 overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2494. Credit to OSS Fuzz
+    Properly fix cc893a4ebfaf8c42cf1221ac82c83df91e77340b to avoid heap-buffer-overflow when numcomps &lt; 3
 
-commit 361c4506fdfb9b6f0e41d86d5d0ea1efb5704ecf
+commit 51a1dcaa6ed5713520dca36fc58cd9240c08b7ca
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-28 22:06:26 +0200
+Date:   2017-09-07 17:52:59 +0200
 
-    opj_tcd_dc_level_shift_decode(): avoid int overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2516. Credit to OSS Fuzz
+    Avoid malloc poisoning issue when including &lt;pthread.h&gt; of uclibc (#1013)
 
-commit 7bdbe490cba9990916f94a40379cc787434340ff
+commit cc893a4ebfaf8c42cf1221ac82c83df91e77340b
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-28 21:55:22 +0200
+Date:   2017-09-07 15:32:54 +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
+    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 16aeb9282f6b3877aa8365c461ba8d3d1338adae
+commit c67e1cd73f6c1fca081f5445af4f65b240c40edc
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-28 21:39:30 +0200
+Date:   2017-09-06 17:33:38 +0200
 
-    Fix null pointer dereference in opj_j2k_add_mct() (#895)
-    
-    Fixes openjeg-crashes-2017-07-27/issue879-poc1.j2k of #895
+    Fix invalid access out of bounds, and bad behaviour, when calling repeatdly opj_get_decoded_tile() on an image with a color palette
 
-commit c5bf5ef4d6552e9159aaad29cb27826acd1a3389
+commit 297f202104fc0ff6b0627e15e7e6883c915f80bf
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-28 21:29:55 +0200
+Date:   2017-09-06 16:49:28 +0200
 
-    Avoid use-after-free when a MCT marker is found after a MCC one (#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/issue880-poc2.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 e03e9474667e5117341351699f0b1dbb06f93346
+commit 003759a4829f3f1baa5a2292956618fecf314818
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-27 22:29:17 +0200
+Date:   2017-09-06 15:59:19 +0200
 
-    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
+    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 820fcfe8bb101a2862c076b02c9b6b636ce39d2f
+commit e656822f927c869f31f2685c67644eacb75fc5d2
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-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 &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-27 19:22:14 +0200
+commit 968e36bbd989fdf789c6a02c80c747346bb851c5
+Merge: 3a382d3 579b893
+Author: Even Rouault &lt;even.rouault@mines-paris.org&gt;
+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 &lt;even.rouault@spatialys.com&gt;
-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 &lt;even.rouault@spatialys.com&gt;
-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 &lt;even.rouault@spatialys.com&gt;
-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 &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-26 22:22:44 +0200
+Date:   2017-09-01 22:09:58 +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 &lt;even.rouault@mines-paris.org&gt;
-Date:   2017-07-26 22:05:32 +0200
+    opj_v4dwt_decode_step1_sse(): rework a bit to improve code generation
 
-    Merge pull request #800 from rouault/tier1_optimizations_multithreading_pterm_check
-    
-    Implement predictive termination check
-
-commit 94c4b7300cc515330bf798bb45eb0d68e2c84aa0
+commit 676d4c807f0162877f9f32e4cdda2e242788d410
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-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 &lt;even.rouault@spatialys.com&gt;
-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 &lt;even.rouault@spatialys.com&gt;
-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 &lt;even.rouault@spatialys.com&gt;
-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 &lt;even.rouault@spatialys.com&gt;
-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 &lt;even.rouault@spatialys.com&gt;
-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 &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-26 12:24:26 +0200
+Date:   2017-09-01 19:49:01 +0200
 
-    Avoid index out of bounds access to pi-&gt;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 &lt;even.rouault@spatialys.com&gt;
-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
+Date:   2017-09-01 19:27:56 +0200
 
-commit 39e962a0ca5e53722f6badda8e93681aad412cf1
-Merge: 60f8ddf 90ced71
-Author: Even Rouault &lt;even.rouault@mines-paris.org&gt;
-Date:   2017-07-13 13:33:21 +0200
-
-    Merge pull request #969 from jeroen/staticlibs
-    
-    install static libraries
+    opj_j2k_setup_encoder(): avoid potential int overflow in computations related to max_cs_size
 
-commit 90ced71601f05e87b4fa922261554eeeb11118b9
-Author: Jeroen &lt;jeroenooms@gmail.com&gt;
-Date:   2017-07-13 11:34:15 +0200
-
-    install static libraries
-
-commit 60f8ddf577b20ccbb3dc0559b624115b9ba522ba
+commit 09929bb615bd6bf2a9f7703fc7b04a12096b091e
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-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[] &lt;= 1.0 are set to 0. Document 0 as being lossless for -q / tcp_distoratio (#1009)
 
-commit a38c4496b631bb5d3f8d5ea42d394544523a9bc6
+commit 32572617765cb9d77302384653a48d793b8f657f
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-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 &lt;even.rouault@spatialys.com&gt;
-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 &lt;even.rouault@spatialys.com&gt;
-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 &lt;even.rouault@mines-paris.org&gt;
-Date:   2017-07-03 12:03:29 +0200
-
-    Merge pull request #954 from jeroen/static
-    
-    build both shared and static library
-
-commit ecbfcbc2764ff1b09e693d57e3ef5764518f1e1c
-Merge: e673c8b 96d757c
-Author: Even Rouault &lt;even.rouault@mines-paris.org&gt;
-Date:   2017-07-01 13:51:52 +0200
+Date:   2017-09-01 16:31:06 +0200
 
-    Merge pull request #964 from rouault/remove_useless_knownfailures
-    
-    Remove useless knownfailures (since LAZY encoding is fixed)
-
-commit e673c8bd4da9f0414da472ac5f3d8e03e5102982
-Merge: 8fa405e b992376
-Author: Even Rouault &lt;even.rouault@mines-paris.org&gt;
-Date:   2017-07-01 12:54:39 +0200
+    opj_dwt_decode_partial_97(): simplify/more efficient use of sparse arrays in vertical pass
 
-    Merge pull request #963 from rouault/travis_avx2
-    
-    Enable AVX2 at runtime on Travis-CI and AppVeyor
-
-commit b9923764da198742c635ad7dff9de158c3dbb60d
+commit ae19001ba425a9b396a29fba3417dccc746bd2ef
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-01 04:15:36 +0200
+Date:   2017-09-01 16:31:04 +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)
+    opj_tcd_dc_level_shift_decode(): optimize lossy case
 
-commit f194ff32ac3fd5bab88607ea6bf09a73adb99758
+commit 470f3ed416a8cc3618b2c04000ea7b4694043f34
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-01 02:53:55 +0200
+Date:   2017-09-01 16:31:02 +0200
 
-    appveyor.yml: add a /arch:AVX2 config on Windows
-    
-    Try running the tests if the CPU supports AVX2.
+    opj_dwt_decode_partial_1_parallel(): add SSE2 optimization
 
-commit 96d757cb8e6c3fb0e133817e5057ee5eae6a594d
+commit 873004c615b1bed3ce780e869288602af86fdee5
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-01 04:24:46 +0200
+Date:   2017-09-01 16:31:00 +0200
 
-    Remove useless knownfailures (since LAZY encoding is fixed)
+    Sub-tile decoding: speed up vertical pass in IDWT5x3 by processing 4 cols at a time
 
-commit 69a001819c9ac36bb3210e475d099cc2abbbf89f
+commit ccac773556070ede24ea3dfbdec47c2b3c5be5c4
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-07-01 01:46:55 +0200
+Date:   2017-09-01 16:30:58 +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
+    Tiny perf improvement in T1 stage for subtile decoding
 
-commit 8fa405ee15b5151df40d8d96460257ee5b510135
+commit 18635df518602265b71da3c70c4d3b774bc3dfc2
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-30 00:03:05 +0200
+Date:   2017-09-01 16:30:56 +0200
 
-    IDWT 5x3: fix bug in AVX2 implementation (#953, #957)
+    test_decode_area: accept user bounds in -strip_height mode
 
-commit 6239ed7be41d370c537ca43e198cf2fdc6eb9a60
+commit 82a43d8035ca5f43e198e15faef6c9ac44b39541
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-26 13:13:26 +0200
-
-    INSTALL.md: add section discussing how to enable CPU specific optimizations
+Date:   2017-09-01 16:30:54 +0200
 
-commit 533fa2fdee4f69a5d7bb8f0b1c0a8f432dad334f
-Merge: 6026786 4fe7620
-Author: Even Rouault &lt;even.rouault@mines-paris.org&gt;
-Date:   2017-06-26 12:45:34 +0200
+    Optimize opj_dwt_decode_partial_1() when cas == 0
 
-    Merge pull request #957 from rouault/idwt_53_improvements
-    
-    IDWT 5x3 single-pass lifting and SSE2/AVX2 implementation
-
-commit 60267860698b86e215bee584857e6b4f2f08b693
+commit 1644665a9105e2d761e8b29f43af602560e6bcf9
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-21 13:20:35 +0200
+Date:   2017-09-01 16:30:52 +0200
 
-    Style fix
+    opj_j2k_update_image_data(): avoid zero-ing the buffer if not needed
 
-commit 93aca84731bfffb20e968af10055a8cd0401806e
+commit b2cc8f7f81242f967b65e76de043e5e31663d793
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-21 12:54:40 +0200
+Date:   2017-09-01 16:30:50 +0200
 
-    Fix mingw related warnings
+    Optimize reading/write into sparse array
 
-commit cdd3e83bae71e1e023c4c2bdd5e52d082576e550
+commit 0ae3cba3404674bbe2028ea9a801301a4c951b33
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-21 12:49:01 +0200
+Date:   2017-09-01 16:30:48 +0200
 
-    Fix clang warning about extraneous parentheses
+    Allow several repeated calls to opj_set_decode_area() and opj_decode() for single-tiled images
+    
+    * Only works for single-tiled images --&gt; 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 4fe7620d4adc131c3ff93bb47bb8d138d69c9cbd
+commit 5d07d463fdb0a5eeffa90eba1566cc21697011b8
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-21 12:28:51 +0200
+Date:   2017-09-01 16:30:45 +0200
 
-    .travis.yml: add a configuration to test compilation of AVX2 (but disable tests since Travis doesn't have AVX2 compatible machines)
+    opj_j2k_decode_tiles(): apply whole single tile image decoding optimization to reading at reduced resolution as well
 
-commit fd0dc535ad9ae0d369d1039aaf56235583ca64ea
+commit 98b93103613c90753fb6c57696f9403f8ea0b1d6
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-21 12:12:58 +0200
+Date:   2017-09-01 16:30:44 +0200
 
-    IDWT 5x3: generalize SSE2 version for AVX2
+    Various changes to allow tile buffers of more than 4giga pixels
     
-    Thanks to our macros that abstract SSE use, the functions can use
-    AVX2 when available (at compile time)
-    
-    This brings an extra 23% speed improvement on bench_dwt in 64bit builds
-    with AVX2 compared to SSE2.
+    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 f6e3475cc9328e5378e96e72b5adf29fb07c5feb
+commit 008a12d4fce0a7b1eabc51e04ed339be759646e2
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-21 01:07:56 +0200
+Date:   2017-09-01 16:30:41 +0200
 
-    dwt.c: small cleanup
+    TCD: allow tile buffer to be greater than 4GB on 64 bit hosts (but number of pixels must remain under 4 billion)
 
-commit f06cfadef8e2b1ad9008957cc6bc80a27c53f2eb
+commit d1299d9670d766006a7a162a770d3b70eaeef9bd
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-20 18:24:21 +0200
+Date:   2017-09-01 16:30:39 +0200
 
-    Enable __SSE__ / __SSE2__ with Visual Studio
+    Fix compiler warning in release mode
 
-commit fa55b52d19f39765d7f108d654a8f87035a5772f
+commit d5153ba404fa13b9c6e7b2c20d4d128aac718fba
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-20 17:56:25 +0200
+Date:   2017-09-01 16:30:37 +0200
 
-    Improve performance of inverse DWT 5x3 (#953)
-    
-    * 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.
+    Remove limitation that prevents from opening images bigger than 4 billion pixels
     
-    With the bench_dwt utility with default arguments (16383x16383 image),
-    time goes from 4.064 s to 1.212 s.
+    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 919ed5f8b8681aeae54ce3884b3ecca56cadc2e0
+commit c37e360a5112b5471168e429159f61b74c0c2f58
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-20 17:56:19 +0200
+Date:   2017-09-01 16:30:35 +0200
 
-    Add bench_dwt program (compiled only if BUILD_BENCH_DWT=ON)
+    opj_tcd_init_tile(): fix typo on overflow detection condition (introduced in previous commit)
 
-commit 5c56933daf1da88aa6f2a8c8dc5fcc7b1d76cb00
-Merge: 32b20b9 8df2521
-Author: Even Rouault &lt;even.rouault@mines-paris.org&gt;
-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)
-
-commit 8df2521a6015af7f69a378811986ddb0b3bfbd3a
+commit eee5104a8885227167a349b6dabdb1f72a04d9d0
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-17 19:15:00 +0200
+Date:   2017-09-01 16:30:32 +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_dwt_decode_partial_tile(): avoid undefined behaviour in lifting operation by properly initializing working buffer
 
-commit 32b20b93e04d38303f736e975eb5f483fda01ca5
+commit f9e9942330f476b66ac4a35d0ae521200878f343
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-17 16:37:56 +0200
+Date:   2017-09-01 16:30:29 +0200
 
-    Fix astyle issue
+    Sub-tile decoding: only allocate tile component buffer of the needed dimension
+    
+    Instead of being the full tile size.
+    
+    * 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 5f596cb2833d5ea7a4d04d22af551731bd770f05
+commit aa7198146b995fe2993ce24f5715057b7da0386d
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-17 14:10:15 +0200
+Date:   2017-08-21 23:21:39 +0200
 
-    Fix warning about unused arguments
+    opj_compress: reorder checks related to code block dimensions, to avoid potential int overflow
 
-commit cc07aec6c7b50090c3f471ca2c68d0ffa8aa4ff1
+commit 0a25dceca7761ee3f16cbb2ced87b915a948b25e
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-17 14:09:31 +0200
-
-    Fix warnings with recent GCC versions
-
-commit a0839cca24e19f1f0906e30ee1009ce89e4942b4
-Author: Jeroen Ooms &lt;jeroenooms@gmail.com&gt;
-Date:   2017-06-16 13:58:25 +0200
-
-    only build both static and dynamic on non-windows
-
-commit 1329b3240aafb1b31328091eb6f7720787b391be
-Author: Jeroen Ooms &lt;jeroenooms@gmail.com&gt;
-Date:   2017-06-16 13:27:19 +0200
-
-    build both shared and static library
+Date:   2017-08-21 23:20:51 +0200
 
-commit 36dd87cea80ad56e0e3178221aa579a28f02a549
-Merge: 9cbc990 5f1e380
-Author: Antonin Descampe &lt;antonin@descampe.net&gt;
-Date:   2017-06-14 17:23:06 +0200
+    opj_j2k_setup_encoder(): validate code block width/height
 
-    Merge pull request #928 from RussellMcOrmond/master
-    
-    Quiet mode for opj_decompress via -quiet long parameter.
-
-commit 9cbc9903c3034d1a101d0521402503ead0abcff0
-Merge: 2609fb8 9a9b069
+commit 84bbb4a8743a93d567f40d7233d5196105c8d84e
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-13 12:09:52 +0200
+Date:   2017-08-21 23:12:45 +0200
 
-    Merge branch 't1_flag_optimizations'
+    opj_t1_allocate_buffers(): remove useless overflow checks
 
-commit 2609fb8077125b5b31f1bcc2f98c12ff1e6572d7
+commit 6ce49bf5aebb3c45c464fa82d14cfd4bf7026a28
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-12 17:15:23 +0100
+Date:   2017-09-01 10:26:18 +0200
 
-    Packet header writing: set empty packet header bit to 0 when appropriate (small optimization)
+    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 73d1510d473b7dcfccfdee57e0e511e6791d5091
+commit 04b70908a7ada29481d2e1903b76f44a68d4d268
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-12 11:23:55 +0100
+Date:   2017-08-29 11:40:53 +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.
+    Use IDWT whole tile decoding if the area of interest equals to the image bounds, taking into account the reduced resolution factor
 
-commit 81c5311758a0ae1f1aea349a6ee0bca2a238fa79
+commit 4776b15fa7ec2afa74f65cd471f94513ea08205a
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-09 10:47:13 +0200
+Date:   2017-08-28 18:07:44 +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.
+    Add test for fix of a55c024fc6b917a409b85aeafd7326421c4aea34
 
-commit 9a9b06911e164bdc854cf6b9c3bc5b6e751bf46d
+commit a55c024fc6b917a409b85aeafd7326421c4aea34
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-02 19:22:15 +0200
+Date:   2017-08-28 17:18:33 +0200
 
-    opj_t1_dec_sigpass_raw/opj_t1_dec_refpass_raw: harmonize style with mqc methods
+    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 532243f1fd9997db63ea7f6b199d21138ccf58a3
+commit 8f92fc97913bec7ffa2dc10d062c0cdd19da20e4
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-02 16:49:26 +0200
+Date:   2017-08-28 14:57:49 +0200
 
-    MQC/RAW decoder: use an artificial 0xFF 0xFF terminating marker.
-    
-    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.
+    Make opj_set_decode_area() and opj_decode() take into account opj_set_decoded_resolution_factor() (#1006, affect API use)
     
-    This kills the remains of the raw.h/.c files that were only used for
-    decoding. Encoding using the mqc structure already.
+    * 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-&gt;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 9b39fc4bccb3e9e4e9a9f61c4dc672fb7f05d865
+commit 5a4a10120a648848de7522245f8671c3ce285dbc
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-02 14:32:12 +0200
+Date:   2017-08-24 14:38:24 +0200
 
-    Fix documentation of opj_t1_decode_cblks()
+    Another cleanup in knownfailures-* files
 
-commit dde6cbabc0cb93102c2091c15d11dec1267d0fd8
+commit e0a5d148f7e84d18a52c97bd08b21b1dffa9570a
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-02 14:25:57 +0200
+Date:   2017-08-24 14:32:36 +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
+    Remove test steps from specialized knownfailures- that are already in knownfailures-all.txt
 
-commit 3d9940a35b8c566c1fb41db56018c91b511a976a
+commit 79aa0b54ddd3e4e3ca09374cb82bd3302a65783a
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-02 11:52:16 +0200
+Date:   2017-08-24 14:31:13 +0200
 
-    Force inlining of mqc decoding and pass steps through heavy use of macros, so as to get better register allocation
+    issue104_jpxstream.jp2 decompresses just fine (and like Kakadu). Update md5refs.txt and remove from knownfailures
 
-commit 7e8b502842075738c9a062a2f06dace3f35dd7cd
+commit c059f431e6262fe5ce296e8137dd478dfe4d1af1
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-02 09:36:25 +0200
+Date:   2017-08-24 14:09:34 +0200
 
-    t1_generate_luts.c: fix compiler warnings
+    Remove broken.jpc test from known failures, by avoiding too long processing time
 
-commit 2ba861c37cb5032d1fa90a7c9298f6e08a0f5413
+commit 5146abc02ebd871aa1e737373cdc7654e8e4b07f
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-01 19:42:03 +0200
+Date:   2017-08-24 14:09:31 +0200
 
-    Optimize opj_t1_update_flags()
+    imagetopgx(): improve performance in 8 bit case (relates to broken.jpc test case)
 
-commit a0861855c11bcb8c93f399ca51e766b5c8ef9e33
+commit fdcd4e6365731cc1015213e424068131bcd1f31f
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-01 17:02:50 +0200
+Date:   2017-08-24 13:23:25 +0200
 
-    T1: remove use of neghalf variable. It is useless since bpno is always &gt; 0
+    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 10410fe72ec2d20f2bbdfb68a383bce1df17f35d
+commit bc71bd1219269057ea18e6acbc77a96ec37aba82
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-01 11:15:25 +0200
+Date:   2017-08-23 18:58:32 +0200
 
-    T1: avoid pointer indirection for mqc and raw members of opj_t1_t
+    opj_dwt_decode_partial_97(): perf improvement: limit copy of coefficients at end of horizontal pass to actual range of interest
 
-commit a5003787ffdbc4fb4a9b4e18187e9f69c36b9e9b
+commit 8180eeace13ffceef5dd7c3f80be156e36181846
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-06-01 10:23:30 +0200
+Date:   2017-08-21 23:06:53 +0200
 
-    T1: remove flags_stride variable from opj_t1_t
+    test_tile_encoder: fix checks on argc
 
-commit 0ec842e1f1e6ebc80df5308cab457372456b204d
+commit c97666f72ba26a7ceb64931963b988a6f8f377f9
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-05-31 19:45:03 +0200
+Date:   2017-08-21 19:02:04 +0200
 
-    Inline opj_raw_decode()
+    j2k.c: fix comment, and remove FIXME
 
-commit aa7a8a4398b3792b4a52fb443d49d317a9a4984f
+commit 24d069e3ffa2286930a2e7e2638431ea1de6846a
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-05-31 17:15:27 +0200
+Date:   2017-08-21 17:19:13 +0200
 
-    T1: loop unrolling in dec_sigpass_raw and dec_refpass_raw
+    Add comment
 
-commit 53d46fc7330ed652db66aa37b498fbfa27be625c
-Merge: 6e97d87 a8ca7c5
+commit e9bbc6d3dde946bdb5195f053f24b91335d5d84c
+Merge: 3eed024 17a7ac4
 Author: Even Rouault &lt;even.rouault@mines-paris.org&gt;
-Date:   2017-05-23 16:15:55 +0200
+Date:   2017-08-21 13:02:07 +0200
 
-    Merge pull request #936 from rouault/master_warnings
+    Merge pull request #1001 from rouault/subtile_decoding_stage2
     
-    CMake: add stronger warnings for openjp2 lib/bin by default, and error out on declaration-after-statement
+    Subtile decoding: only apply IDWT on areas that participate to the window of interest
 
-commit a8ca7c51f38a4cbdcb4a541137478df03e5eb76d
+commit 17a7ac42d581c537cfc1da4324e53047ad82b13e
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-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-21 12:25:38 +0200
 
-commit 6e97d877b155aff55d1ae1fef4a36fa56d51e472
-Merge: 8728cfb 2d2c368
-Author: Even Rouault &lt;even.rouault@mines-paris.org&gt;
-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)
+    Add comments for filter_width values
 
-commit 2d2c368b19ee59cba7470c94bcc2c06ca6db1d80
+commit f87c5ef7ebef3d7a908e98f2de1b6a0336ae57ae
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-05-23 13:46:04 +0200
+Date:   2017-08-20 22:02:41 +0200
 
-    Tests: test opj_compress in VSC mode (related to #172)
+    Subtile decoding: only do 9x7 IDWT computations on relevant areas of tile-component buffer.
 
-commit 8728cfbc799a61dd0600ee04aa64d829937d8710
+commit 3eed024eb45534f86537404e08d08fa572a40782
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-05-23 13:54:28 +0200
+Date:   2017-08-19 15:45:54 +0200
 
-    t1.c: fix compiler warnings
+    pgxtoimage(): avoid excessive memory allocation attempt (#999)
 
-commit 5f1e380b5155577864a84c1e64f213b6d9f83334
-Author: Russell McOrmond &lt;russell.mcormond@canadiana.ca&gt;
-Date:   2017-05-16 09:31:07 -0400
-
-    Fixed formatting issues ASTYLE
-
-commit 9d8e1ecdeb99b1e4b4ffd19feb152c88fe4f83ba
-Author: Russell McOrmond &lt;russell.mcormond@canadiana.ca&gt;
-Date:   2017-05-15 14:39:54 -0400
+commit 5d403250561398f7ba3041d9eb8c893bd680dd72
+Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
+Date:   2017-08-18 15:08:51 +0200
 
-    Quiet mode for opj_decompress via -quiet long parameter.
+    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 83d7a6d4a44833e78321bfd367dc0f822a8d0945
+commit e5285319229a5d77bf316bb0d3a6cbd3cb8666d9
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-05-15 14:11:47 +0200
+Date:   2017-08-18 13:39:20 +0200
 
-    MQC: remove disabled MQC_PERF_OPT mode, which brings no performance improvements (see #923)
+    pgxtoimage(): fix write stack buffer overflow (#997)
 
-commit 4431fa72657b6c4a92c3cf29cfc5c8df69424a0e
+commit 028c504a43e962a725c4fd73d6642ee73c653e1b
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-05-15 14:09:51 +0200
+Date:   2017-08-18 12:30:11 +0200
 
-    Add comments about non successfull attempt of implementing alternate INITDEC, DECODE and BYTEIN procedures (refs #921)
+    test_decode_area: fix to make it work with odd image dimensions
 
-commit f7a126af61877cd4623327142521d82a0c19430d
-Merge: 28d2eab 3c2972f
-Author: Even Rouault &lt;even.rouault@mines-paris.org&gt;
-Date:   2017-05-15 13:08:03 +0200
+commit 5597522cac96b1bc6d48a447751b1c6049248eef
+Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
+Date:   2017-08-18 10:16:38 +0200
 
-    Merge pull request #926 from rouault/reformat_h_files
-    
-    Reformat: apply reformattin on .h files (#128)
+    bmp_read_rle8_data(): avoid potential infinite loop (#996)
 
-commit 3c2972f924857016bb454201c7e92f25de9105ee
+commit 5d12806091eab0659431fefcefdb797b09f8e884
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-05-15 12:21:30 +0200
+Date:   2017-08-17 19:18:48 +0200
 
-    Reformat: apply reformattin on .h files (#128)
+    opj_j2k_update_rates(): grow tile size buffer for some situations
 
-commit 28d2eabca79d06378843d1e94fecfb4a5e22178d
-Merge: 0ecac46 cde210b
-Author: Even Rouault &lt;even.rouault@mines-paris.org&gt;
-Date:   2017-05-15 12:09:45 +0200
+commit 4b0bfbfabc3ce1cc4c6d18dc7113b9f6335372d4
+Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
+Date:   2017-08-17 16:07:19 +0200
 
-    Merge pull request #919 from rouault/reformat
-    
-    Add mechanisms to reformat and check code style, and reformat whole codebase (#128)
+    Zero-initialize tile buffer regions of skipped code-blocks, so as to make Valgrind happy
 
-commit 0ecac46a1db911cbe340c4467000e91cea82c96d
+commit fe338a057c39797bf61939471ebaef09e44464c7
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-05-11 20:18:42 +0200
+Date:   2017-08-14 13:23:57 +0200
 
-    perf_test.py: implement -i option
+    Sub-tile decoding: only decode precincts and codeblocks that intersect the window specified in opj_set_decode_area()
 
-commit cde210be392d60fbcd8a3e7cacfa62660a95e8d9
+commit 17ea17f487a777d14bd322ac06c4e6cb9124a226
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-05-11 11:21:37 +0200
+Date:   2017-08-17 19:05:29 +0200
 
-    astyle.options: use non deprecated option name
+    Fix -Wconversion warning
 
-commit 563bd8499e63db976ca8358216138647593354bc
+commit fd8448ed446a935da3210821a783e794ede3c599
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-05-09 15:44:46 +0200
+Date:   2017-08-17 17:04:48 +0200
 
-    Reformat whole codebase with astyle.options (#128)
+    bench_dwt.c: fix signedness related warnings
 
-commit d4e54e9f35d532062533f1d369c159810b01d224
+commit da046b73a89806eae2f7f461c2a46bda7e07aaa8
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-05-09 15:28:09 +0200
+Date:   2017-08-17 17:02:40 +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.
+    convert.c: fix recently introduced -Wsign-conversion warnings
 
-commit 8650b70e06408d394c1708846b6fc2d86cf14079
-Merge: e92fe29 05d5845
-Author: Even Rouault &lt;even.rouault@mines-paris.org&gt;
-Date:   2017-05-09 13:16:53 +0200
+commit 9f7d79fd30df3712e6bfc6d475bfa143c069c4df
+Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
+Date:   2017-08-17 14:52:10 +0200
 
-    Merge pull request #918 from rouault/profile
-    
-    Add profiling of CPU and memory usage (#912)
+    opj_getopt_long(): avoid infinite loop on invalid or missing value for an option (#736)
 
-commit 05d58451a1221ba95db8fb1d159eb0f76dbafb22
+commit 1ab6e0e07a67193564811c5720a69cb28f09a809
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-05-06 15:06:24 +0200
+Date:   2017-08-17 12:01:16 +0200
 
-    Add profiling of CPU and memory usage (#912)
+    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
 
-commit e92fe29016300e7ae9ccfa6e9cf5422456f57e25
-Merge: 20291aa 328f076
-Author: Even Rouault &lt;even.rouault@mines-paris.org&gt;
-Date:   2017-05-09 12:33:07 +0200
+commit 2cd30c2b06ce332dede81cccad8b334cde997281
+Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
+Date:   2017-08-17 11:47:40 +0200
 
-    Merge pull request #917 from rouault/bench
-    
-    Add performance benchmarking scripts
+    tgatoimage(): avoid excessive memory allocation attempt, and fixes unaligned load (#995)
 
-commit 328f076d2639d8664436e2b620cf9eed4f7dee53
+commit 09e83407fa2b53c606d3179031b8d8b31272e20c
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-05-04 15:22:14 +0200
+Date:   2017-08-17 11:05:53 +0200
 
-    Add performance benchmarking scripts
-    
-    And run them by Travis-CI
+    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 20291aad07591da40ac86e5f5a87b4f6d154ba6a
-Merge: a18040e 04980a8
-Author: Even Rouault &lt;even.rouault@mines-paris.org&gt;
-Date:   2017-05-03 12:41:02 +0200
+commit 8e6c371e66d9c579048fd336cc3365869486080a
+Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
+Date:   2017-08-16 18:29:59 +0200
 
-    Merge pull request #915 from rouault/appveyor_fix_attempt
-    
-    Fix retrieval of jpylyzer in AppVeyor
+    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 04980a8c7b6c260394084ab12b4bdee957caa24f
+commit 1e387de74273c4dac618df94475556541c1caf3e
 Author: Even Rouault &lt;even.rouault@spatialys.com&gt;
-Date:   2017-05-03 12:03:00 +0200
+Date:   2017-08-16 17:38:47 +0200
 
-    Fix retrieval of jpylyzer in AppVeyor
+    Fix build issue of JPWL by adding opj_image_data_alloc() and opj_image_data_free() to src/lib/openmj2 (#994)
 
 ...</pre></div>