<br/>
<h1>Changelog from Git</h1><br/><br/>
<div class='changelog'>
-<pre class='wrap'>commit 5736b1a3683261a5b31fc19a691731dc9fce5920
-Merge: ecbfcbc a0839cc
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-07-03 12:03:29 +0200
+<pre class='wrap'>commit 11b1ffb373d8e41705348080ba5e74a4ffe4148c
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-09 14:13:58 +0200
- Merge pull request #954 from jeroen/static
-
- build both shared and static library
+ Document qmfbid values
-commit ecbfcbc2764ff1b09e693d57e3ef5764518f1e1c
-Merge: e673c8b 96d757c
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-07-01 13:51:52 +0200
+commit ac375ac9f5b4ae47501b60795e905e3d25dd00f8
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-09 11:34:08 +0200
- Merge pull request #964 from rouault/remove_useless_knownfailures
+ Partial revert BPC related check of #975 (#979)
- Remove useless knownfailures (since LAZY encoding is fixed)
-
-commit e673c8bd4da9f0414da472ac5f3d8e03e5102982
-Merge: 8fa405e b992376
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-07-01 12:54:39 +0200
-
- Merge pull request #963 from rouault/travis_avx2
+ PR #975 introduced a check that rejects images that have different bit depth/sign
+ per compoment in SIZ marker if the JP2 IHDR box has BPC != 255
+ This didn't work properly if decoding a .j2k file since the new bit added in
+ opj_cp_t wasn't initialized to the right value.
+ For clarity, tThis new bit has also been renamed to allow_different_bit_depth_sign
+
+ But looking closer at the code, it seems we were already tolerant to inconsistencies.
+ For example we parsed a JP2 BPCC box even if BPC != 255 (just a warning is emitted)
+ So failing hard in opj_j2k_read_siz() wouldn't be very inconsistent, and that
+ alone cannot protect against other issues, so just emit a warning if BPC != 255
+ and the SIZ marker contains different bit depth/sign per component.
- Enable AVX2 at runtime on Travis-CI and AppVeyor
+ Note: we could also check that the content of JP2 BPCC box is consistant with the one
+ of the SIZ marker.
-commit b9923764da198742c635ad7dff9de158c3dbb60d
+commit c38bdbef4f3a5888948903247532fc8cf4284c00
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-01 04:15:36 +0200
+Date: 2017-08-09 10:03:59 +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_decompress: document -quiet option, and remove spurious newline output
-commit f194ff32ac3fd5bab88607ea6bf09a73adb99758
+commit 0eceb4494c23d141ddf242209b92f07bc942b437
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-01 02:53:55 +0200
+Date: 2017-08-09 09:50:39 +0200
- appveyor.yml: add a /arch:AVX2 config on Windows
-
- Try running the tests if the CPU supports AVX2.
+ src/bin/jpwl/convert.c pgxtoimage(): add missing fclose() (#977)
-commit 96d757cb8e6c3fb0e133817e5057ee5eae6a594d
+commit 5a560ebf5138ebc241e9962306ce74bfc50fc69c
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-01 04:24:46 +0200
+Date: 2017-08-09 09:42:30 +0200
- Remove useless knownfailures (since LAZY encoding is fixed)
+ imagetobmp: avoid shift by -1 (relates to #811)
-commit 69a001819c9ac36bb3210e475d099cc2abbbf89f
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-07-01 01:46:55 +0200
+commit 0c07950cb3f318df5b2051ae5d96bef553bb9966
+Author: Antonin Descampe <antonin@gmail.com>
+Date: 2017-08-08 18:05:37 -0700
- .travis.yml: try to run tests in -mavx2 mode if the CPU supports it
+ Fix remaining warning
- And modify settings so as to hae a AVX2 compatible CPU
+ format specifier mismatch in #975
-commit 8fa405ee15b5151df40d8d96460257ee5b510135
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-30 00:03:05 +0200
-
- IDWT 5x3: fix bug in AVX2 implementation (#953, #957)
-
-commit 6239ed7be41d370c537ca43e198cf2fdc6eb9a60
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-26 13:13:26 +0200
+commit 0394f8d0f1c981e0bc587beddc14d1fb0b265b1b
+Merge: 3b1b067 bc3cb74
+Author: Antonin Descampe <antonin@descampe.net>
+Date: 2017-08-08 16:51:54 -0700
- INSTALL.md: add section discussing how to enable CPU specific optimizations
+ Merge pull request #975 from szukw000/changes-for-afl-tests
+
+ Catch images broken by AFL
-commit 533fa2fdee4f69a5d7bb8f0b1c0a8f432dad334f
-Merge: 6026786 4fe7620
+commit 3b1b0672663b59853b63d48f94b63ca497883527
+Merge: 2fbd4bb 9211469
Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-06-26 12:45:34 +0200
+Date: 2017-08-07 20:17:36 +0200
- Merge pull request #957 from rouault/idwt_53_improvements
+ Merge pull request #968 from rouault/reduce_memory_decoding
- IDWT 5x3 single-pass lifting and SSE2/AVX2 implementation
-
-commit 60267860698b86e215bee584857e6b4f2f08b693
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-21 13:20:35 +0200
-
- Style fix
-
-commit 93aca84731bfffb20e968af10055a8cd0401806e
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-21 12:54:40 +0200
-
- Fix mingw related warnings
-
-commit cdd3e83bae71e1e023c4c2bdd5e52d082576e550
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-21 12:49:01 +0200
-
- Fix clang warning about extraneous parentheses
+ Reduce memory decoding
-commit 4fe7620d4adc131c3ff93bb47bb8d138d69c9cbd
+commit 92114694a48638e86c07e4adf11b78878045c8a9
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-21 12:28:51 +0200
+Date: 2017-07-06 19:34:21 +0200
- .travis.yml: add a configuration to test compilation of AVX2 (but disable tests since Travis doesn't have AVX2 compatible machines)
-
-commit fd0dc535ad9ae0d369d1039aaf56235583ca64ea
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-21 12:12:58 +0200
-
- IDWT 5x3: generalize SSE2 version for AVX2
+ Slight improvement in management of code block chunks
- Thanks to our macros that abstract SSE use, the functions can use
- AVX2 when available (at compile time)
+ Instead of having the chunk array at the segment level, we can move it down to
+ the codeblock itself since segments are filled in sequential order.
+ Limit the number of memory allocation, and decrease slightly the memory usage.
- This brings an extra 23% speed improvement on bench_dwt in 64bit builds
- with AVX2 compared to SSE2.
-
-commit f6e3475cc9328e5378e96e72b5adf29fb07c5feb
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-21 01:07:56 +0200
-
- dwt.c: small cleanup
-
-commit f06cfadef8e2b1ad9008957cc6bc80a27c53f2eb
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-20 18:24:21 +0200
-
- Enable __SSE__ / __SSE2__ with Visual Studio
+ On MAPA_005.jp2
+
+ n4: 1871312549 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+ n1: 1610689344 0x4E781E7: opj_aligned_malloc (opj_malloc.c:61)
+ n1: 1610689344 0x4E71D1B: opj_alloc_tile_component_data (tcd.c:676)
+ n1: 1610689344 0x4E726CF: opj_tcd_init_decode_tile (tcd.c:816)
+ n1: 1610689344 0x4E4BE39: opj_j2k_read_tile_header (j2k.c:8617)
+ n1: 1610689344 0x4E4C902: opj_j2k_decode_tiles (j2k.c:10348)
+ n1: 1610689344 0x4E4E3CE: opj_j2k_decode (j2k.c:7846)
+ n1: 1610689344 0x4E53002: opj_jp2_decode (jp2.c:1564)
+ n0: 1610689344 0x40374E: main (opj_decompress.c:1459)
+ n1: 219232541 0x4E4BC50: opj_j2k_read_tile_header (j2k.c:4683)
+ n1: 219232541 0x4E4C902: opj_j2k_decode_tiles (j2k.c:10348)
+ n1: 219232541 0x4E4E3CE: opj_j2k_decode (j2k.c:7846)
+ n1: 219232541 0x4E53002: opj_jp2_decode (jp2.c:1564)
+ n0: 219232541 0x40374E: main (opj_decompress.c:1459)
+ n1: 23893200 0x4E72735: opj_tcd_init_decode_tile (tcd.c:1225)
+ n1: 23893200 0x4E4BE39: opj_j2k_read_tile_header (j2k.c:8617)
+ n1: 23893200 0x4E4C902: opj_j2k_decode_tiles (j2k.c:10348)
+ n1: 23893200 0x4E4E3CE: opj_j2k_decode (j2k.c:7846)
+ n1: 23893200 0x4E53002: opj_jp2_decode (jp2.c:1564)
+ n0: 23893200 0x40374E: main (opj_decompress.c:1459)
+ n0: 17497464 in 52 places, all below massif's threshold (1.00%)
-commit fa55b52d19f39765d7f108d654a8f87035a5772f
+commit ca34d13e76a588a00171e57690c1deeaf068723a
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-20 17:56:25 +0200
+Date: 2017-07-06 16:11:11 +0200
- Improve performance of inverse DWT 5x3 (#953)
+ Decoding: do not allocate memory for the codestream of each codeblock
- * 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.
+ Currently we allocate at least 8192 bytes for each codeblock, and copy
+ the relevant parts of the codestream in that per-codeblock buffer as we
+ decode packets.
+ As the whole codestream for the tile is ingested in memory and alive
+ during the decoding, we can directly point to it instead of copying. But
+ to do that, we need an intermediate concept, a 'chunk' of code-stream segment,
+ given that segments may be made of data at different places in the code-stream
+ when quality layers are used.
- With the bench_dwt utility with default arguments (16383x16383 image),
- time goes from 4.064 s to 1.212 s.
-
-commit 919ed5f8b8681aeae54ce3884b3ecca56cadc2e0
-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)
-
-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
+ With that change, the decoding of MAPA_005.jp2 goes down from the previous
+ improvement of 2.7 GB down to 1.9 GB.
- Remove OPJ_NOSANITIZE in opj_bio_read() and opj_bio_write() (#761)
-
-commit 8df2521a6015af7f69a378811986ddb0b3bfbd3a
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-17 19:15:00 +0200
-
- Remove OPJ_NOSANITIZE in opj_bio_read() and opj_bio_write() (#761)
+ New profile:
- 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.
-
-commit 32b20b93e04d38303f736e975eb5f483fda01ca5
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-17 16:37:56 +0200
+ n4: 1885648469 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+ n1: 1610689344 0x4E78287: opj_aligned_malloc (opj_malloc.c:61)
+ n1: 1610689344 0x4E71D7B: opj_alloc_tile_component_data (tcd.c:676)
+ n1: 1610689344 0x4E7272C: opj_tcd_init_decode_tile (tcd.c:816)
+ n1: 1610689344 0x4E4BDD9: opj_j2k_read_tile_header (j2k.c:8618)
+ n1: 1610689344 0x4E4C8A2: opj_j2k_decode_tiles (j2k.c:10349)
+ n1: 1610689344 0x4E4E36E: opj_j2k_decode (j2k.c:7847)
+ n1: 1610689344 0x4E52FA2: opj_jp2_decode (jp2.c:1564)
+ n0: 1610689344 0x40374E: main (opj_decompress.c:1459)
+ n1: 219232541 0x4E4BBF0: opj_j2k_read_tile_header (j2k.c:4685)
+ n1: 219232541 0x4E4C8A2: opj_j2k_decode_tiles (j2k.c:10349)
+ n1: 219232541 0x4E4E36E: opj_j2k_decode (j2k.c:7847)
+ n1: 219232541 0x4E52FA2: opj_jp2_decode (jp2.c:1564)
+ n0: 219232541 0x40374E: main (opj_decompress.c:1459)
+ n1: 39822000 0x4E727A9: opj_tcd_init_decode_tile (tcd.c:1219)
+ n1: 39822000 0x4E4BDD9: opj_j2k_read_tile_header (j2k.c:8618)
+ n1: 39822000 0x4E4C8A2: opj_j2k_decode_tiles (j2k.c:10349)
+ n1: 39822000 0x4E4E36E: opj_j2k_decode (j2k.c:7847)
+ n1: 39822000 0x4E52FA2: opj_jp2_decode (jp2.c:1564)
+ n0: 39822000 0x40374E: main (opj_decompress.c:1459)
+ n0: 15904584 in 52 places, all below massif's threshold (1.00%)
+
+commit 373520db309430b68dd9ff09cba03a25f711a88e
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-07-06 13:23:29 +0200
+
+ Add documentation for magic values in the code
+
+commit 434ace4ff74cc3eee401d4d3c02668c1d85f2a0d
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-07-06 02:17:26 +0200
+
+ opj_jp2_apply_pclr() also needs to use opj_image_data_alloc/opj_image_data_free
+
+commit 0c1fc0593ef5b918068709fd74d76e4824c90e7c
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-07-06 02:02:25 +0200
+
+ Complementary fix to previous commit
+
+commit f58aab9d6a57e48bdc60e15dd373c24de74719a9
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-07-06 01:47:40 +0200
+
+ Add opj_image_data_alloc() / opj_image_data_free()
+
+ As bin/common/color.c used to directly call malloc()/free(), we need
+ to export functions dedicated to allocating/freeing image component data.
+
+commit 61fb5dd7f81c2e3dfabbb99f59dc89572d59fa37
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-07-06 01:05:24 +0200
+
+ Fix crash on Windows due to b7594c0fcb9dd3aa6356d72c4a525d76168da689
+
+ b7594c0fcb9dd3aa6356d72c4a525d76168da689 may put opj_tcd_tilecomp_t->data
+ allocated by opj_alloc_tile_component_data() as the image->comps[].data. As
+ opj_alloc_tile_component_data() use opj_aligned_malloc() we must be sure to
+ ue opj_alined_malloc()/_free() in all places where we alloc/free
+ image->comps[].data.
+
+ Note: this might have some compatibility impact in case user code does itself
+ the allocation/free of image->comps[].data
+
+commit 793edc38e41700e9b4cda4b7f9c79aba95b8d989
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-07-05 23:48:28 +0200
+
+ Decrease memory consumption for whole image single tile decoding.
+
+ We can use the same buffer for the tile decoding and the final image, and
+ save the intermediate buffer to transfer between those.
+
+ Effect on the decoding of MAPA (9944 x 13498 x 3 components of size byte)
+
+ Peak memory from 4.5 GB to 2.7 GB
+
+ Now:
+ n5: 2699708767 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+ n1: 1610689344 0x4E77E07: opj_aligned_malloc (opj_malloc.c:61) <-- final image
+ n1: 1610689344 0x4E7195B: opj_alloc_tile_component_data (tcd.c:676)
+ n1: 1610689344 0x4E722D2: opj_tcd_init_decode_tile (tcd.c:816)
+ n1: 1610689344 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
+ n1: 1610689344 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
+ n1: 1610689344 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
+ n1: 1610689344 0x4E52E42: opj_jp2_decode (jp2.c:1564)
+ n0: 1610689344 0x40369E: main (opj_decompress.c:1459)
+ n1: 815554560 0x4E72231: opj_tcd_init_decode_tile (tcd.c:1217) <-- working memory for code blocks: 9944*13498/64/64*8192*3
+ n1: 815554560 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
+ n1: 815554560 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
+ n1: 815554560 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
+ n1: 815554560 0x4E52E42: opj_jp2_decode (jp2.c:1564)
+ n0: 815554560 0x40369E: main (opj_decompress.c:1459)
+ n1: 219758391 0x4E4C0BF: opj_j2k_read_tile_header (j2k.c:4661) <-- ingestion of code stream
+ n1: 219758391 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
+ n1: 219758391 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
+ n1: 219758391 0x4E52E42: opj_jp2_decode (jp2.c:1564)
+ n0: 219758391 0x40369E: main (opj_decompress.c:1459)
+ n1: 39822000 0x4E7224F: opj_tcd_init_decode_tile (tcd.c:1224) <-- OPJ_J2K_DEFAULT_NB_SEGS*sizeof(opj_tcd_seg_t) per codeblock
+ n1: 39822000 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
+ n1: 39822000 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
+ n1: 39822000 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
+ n1: 39822000 0x4E52E42: opj_jp2_decode (jp2.c:1564)
+ n0: 39822000 0x40369E: main (opj_decompress.c:1459)
+ n0: 13884472 in 49 places, all below massif's threshold (1.00%)
+
+ Before:
+ n5: 4493329848 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
+ n2: 1610709160 0x4E77C87: opj_aligned_malloc (opj_malloc.c:61)
+ n1: 1610689344 0x4E717DB: opj_alloc_tile_component_data (tcd.c:676)
+ n1: 1610689344 0x4E72152: opj_tcd_init_decode_tile (tcd.c:816)
+ n1: 1610689344 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
+ n1: 1610689344 0x4E4C64A: opj_j2k_decode_tiles (j2k.c:10318)
+ n1: 1610689344 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
+ n1: 1610689344 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
+ n0: 1610689344 0x40369E: main (opj_decompress.c:1459)
+ n0: 19816 in 2 places, all below massif's threshold (1.00%)
+ n1: 1610689344 0x4E43F36: opj_j2k_update_image_data.isra.7 (j2k.c:8743)
+ n1: 1610689344 0x4E4C5C1: opj_j2k_decode_tiles (j2k.c:10358)
+ n1: 1610689344 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
+ n1: 1610689344 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
+ n0: 1610689344 0x40369E: main (opj_decompress.c:1459)
+ n1: 815554560 0x4E720B1: opj_tcd_init_decode_tile (tcd.c:1217)
+ n1: 815554560 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
+ n1: 815554560 0x4E4C64A: opj_j2k_decode_tiles (j2k.c:10318)
+ n1: 815554560 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
+ n1: 815554560 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
+ n0: 815554560 0x40369E: main (opj_decompress.c:1459)
+ n1: 402672336 0x4E4C545: opj_j2k_decode_tiles (j2k.c:10336)
+ n1: 402672336 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
+ n1: 402672336 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
+ n0: 402672336 0x40369E: main (opj_decompress.c:1459)
+ n0: 53704448 in 58 places, all below massif's threshold (1.00%)
+
+commit bc3cb7410023e9d0c7ff9972a0bc8cf1fe9b32a4
+Author: szukw000 <szukw000@arcor.de>
+Date: 2017-08-07 16:44:28 +0200
+
+ Changes for converttif.c to fix tsize_t
+
+commit 2fbd4bb0b9c6178f12c852dc40db6ab05734bfe2
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-08-04 18:01:29 +0200
+
+ opj_j2k_read_sot(): check current TPSot number regarding previous (non-zero) TNsot to avoid opj_j2k_merge_ppt() to be called several times. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2851. Credit to OSS Fuzz
+
+commit 57e36dbfeb57451444c5c20eab66ab0bedd3d3b3
+Author: szukw000 <szukw000@arcor.de>
+Date: 2017-08-02 17:27:08 +0200
+
+ First change on changes-for-afl-tests
+
+commit 155fc2e279b85bd04709967b2797de4f69b0cf3e
+Author: Antonin Descampe <antonin@gmail.com>
+Date: 2017-08-02 17:07:29 +0200
- Fix astyle issue
+ Update abi-check to take into account new defaults for "add" git command
-commit 5f596cb2833d5ea7a4d04d22af551731bd770f05
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-17 14:10:15 +0200
+commit eb90d8ec935eba934bfd260cc80c8ef445dff4fd
+Author: Antonin Descampe <antonin@gmail.com>
+Date: 2017-08-02 16:50:11 +0200
- Fix warning about unused arguments
+ WIP: fix abi-check and automatic upload
-commit cc07aec6c7b50090c3f471ca2c68d0ffa8aa4ff1
+commit 48125b0d124bc668b971b1f5df5a3c39798cfcf9
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-17 14:09:31 +0200
-
- Fix warnings with recent GCC versions
-
-commit a0839cca24e19f1f0906e30ee1009ce89e4942b4
-Author: Jeroen Ooms <jeroenooms@gmail.com>
-Date: 2017-06-16 13:58:25 +0200
-
- only build both static and dynamic on non-windows
+Date: 2017-07-31 17:35:10 +0200
-commit 1329b3240aafb1b31328091eb6f7720787b391be
-Author: Jeroen Ooms <jeroenooms@gmail.com>
-Date: 2017-06-16 13:27:19 +0200
+ src/bin/jpwl/convert.c: add missing fclose() in error code path (suggested by maddin200, #976)
- build both shared and static library
+commit 00f45684a8339e69ed55df2397f3c19d09fecaed
+Author: szukw000 <szukw000@arcor.de>
+Date: 2017-07-31 13:58:08 +0200
-commit 36dd87cea80ad56e0e3178221aa579a28f02a549
-Merge: 9cbc990 5f1e380
-Author: Antonin Descampe <antonin@descampe.net>
-Date: 2017-06-14 17:23:06 +0200
-
- Merge pull request #928 from RussellMcOrmond/master
-
- Quiet mode for opj_decompress via -quiet long parameter.
+ Catch images broken by AFL
-commit 9cbc9903c3034d1a101d0521402503ead0abcff0
-Merge: 2609fb8 9a9b069
+commit 13cde9fa37249628af6b6f10601b733f87a025f4
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-13 12:09:52 +0200
+Date: 2017-07-30 19:46:52 +0200
- Merge branch 't1_flag_optimizations'
+ src/lib/openjp2/*.h: use OPJ_ prefix for inclusion guards instead of reserved __ (#587)
-commit 2609fb8077125b5b31f1bcc2f98c12ff1e6572d7
+commit 9a6d41d22b1a4f17a376d2f6f208c52c58b8e4b3
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-12 17:15:23 +0100
+Date: 2017-07-30 19:27:01 +0200
- Packet header writing: set empty packet header bit to 0 when appropriate (small optimization)
+ opj_event_msg(): force zero termination of buffer
-commit 73d1510d473b7dcfccfdee57e0e511e6791d5091
+commit b716f8616394252724ca0811eab3a20ab42b2189
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-12 11:23:55 +0100
+Date: 2017-07-30 19:26:47 +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.
+ Fix breakage of 22bf99ce0220811bfce1562ee61423cb0245b683
-commit 81c5311758a0ae1f1aea349a6ee0bca2a238fa79
+commit 22bf99ce0220811bfce1562ee61423cb0245b683
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-09 10:47:13 +0200
+Date: 2017-07-30 19:07:16 +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.
+ Test return value of opj_j2k_setup_decoding_tile() (commit https://github.com/uclouvain/openjpeg/pull/561/commits/ec31fa0c7f1ff8979312c07296cba41584c458a0 by ak-dxdy, #561)
-commit 9a9b06911e164bdc854cf6b9c3bc5b6e751bf46d
+commit ffa9a4f6585dc199fb850dee4255e7a7b84aad63
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-02 19:22:15 +0200
+Date: 2017-07-30 18:46:34 +0200
- opj_t1_dec_sigpass_raw/opj_t1_dec_refpass_raw: harmonize style with mqc methods
+ Fix warnings in USE_JPIP compilation mode
-commit 532243f1fd9997db63ea7f6b199d21138ccf58a3
+commit c22cbd8bdf8ff2ae372f94391a4be2d322b36b41
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-02 16:49:26 +0200
+Date: 2017-07-30 18:43:25 +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.
-
- This kills the remains of the raw.h/.c files that were only used for
- decoding. Encoding using the mqc structure already.
+ Avoid heap buffer overflow in function pnmtoimage of convert.c, and unsigned integer overflow in opj_image_create() (CVE-2016-9118, #861)
-commit 9b39fc4bccb3e9e4e9a9f61c4dc672fb7f05d865
+commit 83342f2aafcab4599b49f780e35fd249e8402b61
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-02 14:32:12 +0200
+Date: 2017-07-30 18:18:59 +0200
- Fix documentation of opj_t1_decode_cblks()
+ Fix Doxygen warnings (patch derived from Winfried's doxygen-dif.txt.zip, #849)
-commit dde6cbabc0cb93102c2091c15d11dec1267d0fd8
+commit 4748318136626dd9e841ea1aa8b52adfbab26772
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-02 14:25:57 +0200
+Date: 2017-07-30 17:26:03 +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
+ j2k.c: remove hardcoded constants related to m_state, and useless FIXME
-commit 3d9940a35b8c566c1fb41db56018c91b511a976a
+commit e23e0c94d0eb30623bc67be19c38c22ee5378344
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-02 11:52:16 +0200
+Date: 2017-07-30 16:48:15 +0200
- Force inlining of mqc decoding and pass steps through heavy use of macros, so as to get better register allocation
+ Avoid p_stream->m_user_data_length >= (OPJ_UINT64)p_stream->m_byte_offset assertion in opj_stream_get_number_byte_left(). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2786. Credit to OSS Fuzz
-commit 7e8b502842075738c9a062a2f06dace3f35dd7cd
+commit 1ed8d67797ef57143e2c855b602016bf9d89337d
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-02 09:36:25 +0200
+Date: 2017-07-30 15:35:47 +0200
- t1_generate_luts.c: fix compiler warnings
+ opj_j2k_set_decode_area: replace assertions by runtime checks. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2795. Credit to OSS Fuzz
-commit 2ba861c37cb5032d1fa90a7c9298f6e08a0f5413
+commit 68832af20e3b3710424947e12762b6b52d3b6ac0
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-01 19:42:03 +0200
+Date: 2017-07-30 15:22:24 +0200
- Optimize opj_t1_update_flags()
+ opj_tcd_dc_level_shift_decode: avoid int32 overflow when prec == 31. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2799. Credit to OSS Fuzz
-commit a0861855c11bcb8c93f399ca51e766b5c8ef9e33
+commit 517bf6fd86dae18b62390a03533d30da0e5bb701
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-01 17:02:50 +0200
+Date: 2017-07-29 21:11:23 +0200
- T1: remove use of neghalf variable. It is useless since bpno is always > 0
+ src/bin/jpwl/convert.c: fix memleak (fix suggested by maddin200, #631)
-commit 10410fe72ec2d20f2bbdfb68a383bce1df17f35d
+commit 51eb86d8f7a6297a4f0e8ca44977b72532de0353
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-01 11:15:25 +0200
+Date: 2017-07-29 19:43:23 +0200
- T1: avoid pointer indirection for mqc and raw members of opj_t1_t
+ Fix warnings in pi.c raised by VS11 analyze (#190)
-commit a5003787ffdbc4fb4a9b4e18187e9f69c36b9e9b
+commit 397f62c0a838e15d667ef50e27d5d011d2c79c04
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-06-01 10:23:30 +0200
+Date: 2017-07-29 19:13:49 +0200
- T1: remove flags_stride variable from opj_t1_t
+ Fix write heap buffer overflow in opj_mqc_byteout(). Discovered by Ke Liu of Tencent's Xuanwu LAB (#835)
-commit 0ec842e1f1e6ebc80df5308cab457372456b204d
+commit 11445eddad7e7fa5b273d1c83c91011c44e5d586
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-31 19:45:03 +0200
-
- Inline opj_raw_decode()
+Date: 2017-07-29 19:03:13 +0200
-commit aa7a8a4398b3792b4a52fb443d49d317a9a4984f
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-31 17:15:27 +0200
-
- T1: loop unrolling in dec_sigpass_raw and dec_refpass_raw
+ opj_pi_update_decode_poc(): limit layno1 to the number of layers (CVE-2016-1626 and CVE-2016-1628, #850)
+
+ This has been recently fixed in a less elegant way per
+ 80818c39f5bfbac37768fcee95b0ffeceaa77264
-commit 68557ff5036e68112bcbf194d2a7f48b1f58b752
+commit 3fbe71369019df0b47c7a2be4fab8c05768f2f32
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-31 14:35:56 +0200
+Date: 2017-07-29 18:38:16 +0200
- T1: Transpose coder optimizations to decoder, and cleanup code
+ 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 1957a498b68af12bfa8d382f96e54f8403bb2fb6
+commit 5a3e7aaf339943bc988adbada39a1fc8f5046899
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-23 14:55:45 +0200
+Date: 2017-07-29 17:56:12 +0200
- Fix compiler warnings
+ color_cielab_to_rgb(): reject images with components of different dimensions to void read heap buffer overflow (#909)
-commit 40c0f42def262ed76e2f0048d09aab9e0ee1af02
+commit 784d4d47e97b5d0fccccbd931349997a0e2074cc
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-23 13:02:24 +0200
+Date: 2017-07-29 17:51:10 +0200
- Factor index computation for lut_enc_ctxno_sc and lut_enc_spb
+ Fix breakage of 2fa0fc61f2d546c8b67e7c5a9cbc61d98e1f7af0 (#970)
-commit d6907b93044108aacc6ab9281a7a9ab48546824c
+commit 2fa0fc61f2d546c8b67e7c5a9cbc61d98e1f7af0
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-23 00:40:30 +0200
+Date: 2017-07-29 17:28:55 +0200
- Optimize a bit opj_t1_enc_clnpass()
+ imagetopnm(): make sure the alpha component has same dimension as other components to avoid read heap buffer overflow (#970)
-commit c76a59213100bbec567a0c78b7b1b8ba82d1e1fa
+commit db9ef99f6dd054a84fa8382c02869fb0656abfc8
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-22 23:30:30 +0200
+Date: 2017-07-29 16:34:35 +0200
- T1: remove unused code in decoder
+ opj_t1_decode_cblk(): avoid undefined shift behaviour. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2487. Credit to OSS Fuzz
-commit 4068363ff5021608180f712823db55d9c0a551e6
+commit f6551f822fe020843299bd807ec6989abd070b2c
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-22 18:42:46 +0200
+Date: 2017-07-29 16:29:11 +0200
- T1: fix VSC mode in encoder
+ opj_t1_clbl_decode_processor(): avoid undefined behaviour if roishift >= 31. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2506. Credit to OSS Fuzz
-commit cd12414c6b11295ae8540df2ef77eb9c624cd264
+commit 9906fbf737692486cebabe98169988d818e2e66a
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-07-29 16:22:36 +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
+ 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
-commit a8ca7c51f38a4cbdcb4a541137478df03e5eb76d
+commit 71b4f5b124d14ed609763b11e19d2d480bc32f58
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
-
-commit 6e97d877b155aff55d1ae1fef4a36fa56d51e472
-Merge: 8728cfb 2d2c368
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-23 14:49:38 +0200
+Date: 2017-07-29 15:52:11 +0200
- Merge pull request #935 from rouault/add_compress_vsc_test
-
- Tests: test opj_compress in VSC mode (related to #172)
+ opj_pi_next_pcrl(): avoid undefined shift behaviour. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2787. Credit to OSS Fuzz
-commit 2d2c368b19ee59cba7470c94bcc2c06ca6db1d80
+commit d6654d906c1ae66590b6d600458a91f1ee923de5
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-23 13:46:04 +0200
+Date: 2017-07-28 22:15:47 +0200
- Tests: test opj_compress in VSC mode (related to #172)
+ opj_int_ceildiv(): fix int32 overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2494. Credit to OSS Fuzz
-commit 8728cfbc799a61dd0600ee04aa64d829937d8710
+commit 361c4506fdfb9b6f0e41d86d5d0ea1efb5704ecf
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-07-28 22:06:26 +0200
-commit 9d8e1ecdeb99b1e4b4ffd19feb152c88fe4f83ba
-Author: Russell McOrmond <russell.mcormond@canadiana.ca>
-Date: 2017-05-15 14:39:54 -0400
+ 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
- Quiet mode for opj_decompress via -quiet long parameter.
-
-commit 83d7a6d4a44833e78321bfd367dc0f822a8d0945
+commit 7bdbe490cba9990916f94a40379cc787434340ff
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-15 14:11:47 +0200
+Date: 2017-07-28 21:55:22 +0200
- MQC: remove disabled MQC_PERF_OPT mode, which brings no performance improvements (see #923)
+ 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
-commit 4431fa72657b6c4a92c3cf29cfc5c8df69424a0e
+commit 16aeb9282f6b3877aa8365c461ba8d3d1338adae
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-07-28 21:39:30 +0200
- Merge pull request #926 from rouault/reformat_h_files
+ Fix null pointer dereference in opj_j2k_add_mct() (#895)
- Reformat: apply reformattin on .h files (#128)
+ Fixes openjeg-crashes-2017-07-27/issue879-poc1.j2k of #895
-commit 3c2972f924857016bb454201c7e92f25de9105ee
+commit c5bf5ef4d6552e9159aaad29cb27826acd1a3389
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-15 12:21:30 +0200
-
- Reformat: apply reformattin on .h files (#128)
+Date: 2017-07-28 21:29:55 +0200
-commit 28d2eabca79d06378843d1e94fecfb4a5e22178d
-Merge: 0ecac46 cde210b
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-15 12:09:45 +0200
-
- Merge pull request #919 from rouault/reformat
+ Avoid use-after-free when a MCT marker is found after a MCC one (#895)
- Add mechanisms to reformat and check code style, and reformat whole codebase (#128)
-
-commit 0ecac46a1db911cbe340c4467000e91cea82c96d
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-11 20:18:42 +0200
-
- perf_test.py: implement -i option
-
-commit cde210be392d60fbcd8a3e7cacfa62660a95e8d9
-Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-11 11:21:37 +0200
+ Fixes openjeg-crashes-2017-07-27/issue880-poc2.j2k of #895
- astyle.options: use non deprecated option name
-
-commit 563bd8499e63db976ca8358216138647593354bc
+commit e03e9474667e5117341351699f0b1dbb06f93346
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-09 15:44:46 +0200
+Date: 2017-07-27 22:29:17 +0200
- Reformat whole codebase with astyle.options (#128)
+ 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 d4e54e9f35d532062533f1d369c159810b01d224
+commit 820fcfe8bb101a2862c076b02c9b6b636ce39d2f
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-09 15:28:09 +0200
+Date: 2017-07-27 19:34:54 +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
+ opj_j2k_update_image_data / opj_tcd_update_tile_data: fix unaligned load/store (#895)
- scripts/prepare-commit.sh can be used locally to automatically reformat
- edited files.
+ When components don't have the same width, unaligned load/store are possible.
- Travis-CI will run scripts/verify-indentation.sh to verify committed files.
+ Fixes openjeg-crashes-2017-07-27/id:000000,sig:11,src:001342,op:flip4,pos:162.jp2 of #895
-commit 8650b70e06408d394c1708846b6fc2d86cf14079
-Merge: e92fe29 05d5845
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-09 13:16:53 +0200
+commit 6c4e5bacb9d9791fc6ff074bd7958b3820d70514
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-07-27 19:22:14 +0200
- Merge pull request #918 from rouault/profile
+ opj_pi_next_rpcl / opj_pi_next_pcrl / opj_pi_next_cprl: avoid int overflow (#895)
- Add profiling of CPU and memory usage (#912)
+ Fixes int overflow on openjeg-crashes-2017-07-27/id:000000,sig:08,src:000879,op:flip2,pos:128.jp2
-commit 05d58451a1221ba95db8fb1d159eb0f76dbafb22
+commit 178194c093422c9564efc41f9ecb5c630b43f723
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-06 15:06:24 +0200
-
- Add profiling of CPU and memory usage (#912)
+Date: 2017-07-27 18:51:51 +0200
-commit e92fe29016300e7ae9ccfa6e9cf5422456f57e25
-Merge: 20291aa 328f076
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-09 12:33:07 +0200
-
- Merge pull request #917 from rouault/bench
+ opj_jp2_check_color(): replace assertion regarding mtyp by runtime check (#672, #895)
- Add performance benchmarking scripts
+ Fixes test case openjeg-crashes-2017-07-27/id:000000,sig:06,src:000001,op:flip1,pos:808.jp2
+ of #895
-commit 328f076d2639d8664436e2b620cf9eed4f7dee53
+commit d6fa30099797c68c6a67decf58571dd59dbf734b
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-04 15:22:14 +0200
+Date: 2017-07-26 23:25:38 +0200
- Add performance benchmarking scripts
+ Avoids undefined shift behaviour in m_dc_level_shift computation
- 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
-
- Merge pull request #915 from rouault/appveyor_fix_attempt
+ Fixes warning found on clusterfuzz-testcase-minimized-5146316340461568
+ https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2495
- Fix retrieval of jpylyzer in AppVeyor
+ Credit to OSS Fuzz
-commit 04980a8c7b6c260394084ab12b4bdee957caa24f
+commit a88cbb6a0b3539461dfb29922102953b7a7fc3a7
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-05-03 12:03:00 +0200
-
- Fix retrieval of jpylyzer in AppVeyor
+Date: 2017-07-26 22:53:59 +0200
-commit a18040e02238c577cf7853a0e303cbca62e044a8
-Merge: e7ff1ef a43f1be
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-03 11:48:02 +0200
-
- Merge pull request #893 from rouault/remove_tagtree_warnings
+ Fix various undefined shift behaviour in pi.c
- Remove warnings related to empty tag-trees.
+ Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2496
+ Credit to OSS Fuzz
-commit e7ff1efb82fab7ba6c6d69e7d286811abb4ee7e7
-Merge: 807da62 cf08763
-Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-03 11:46:45 +0200
+commit 6c5fe9407b7768eb2ac55b83511bc103551d207a
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-07-26 22:22:44 +0200
- Merge pull request #899 from jwilk/man-warnings
+ Avoid potential undefined shift behaviour in opj_bio_read() from opj_t2_read_packet_header()
- Remove spurious .R macros from manpages
+ Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2485
+ Credit to OSS Fuzz
-commit 807da629a6e00a06a3d2506c3f99da1757252c43
-Merge: 8c33128 4927b64
+commit dbf527bf2a53bc88e6cf1373991002ec0e8e22a1
+Merge: 5e795d9 94c4b73
Author: Even Rouault <even.rouault@mines-paris.org>
-Date: 2017-05-03 11:46:01 +0200
+Date: 2017-07-26 22:05:32 +0200
- Merge pull request #914 from alexwlchan/fix-readme
+ Merge pull request #800 from rouault/tier1_optimizations_multithreading_pterm_check
- Escape quotes to ensure README renders on GitHub correctly
-
-commit 4927b647663bbf72500400dfd0173d53761152c9
-Author: Alex Chan <a.chan@wellcome.ac.uk>
-Date: 2017-04-28 09:43:05 +0100
-
- Escape quotes to ensure README renders on GitHub correctly
-
-commit cf08763c3174525f151746705c3c72a321a01a4a
-Author: Jakub Wilk <jwilk@jwilk.net>
-Date: 2017-03-05 16:08:57 +0100
+ Implement predictive termination check
- Remove spurious .R macros from manpages
-
- Fixes the following warnings from man:
-
- `R' is a string (producing the registered sign), not a macro.
-
-commit 8c33128369816be09968712b50681e743464b93c
-Author: Antonin Descampe <antonin@gmail.com>
-Date: 2017-03-03 23:23:39 +0100
-
- Fixed CRLF auto conversion issue in openjpeg-data #655
-
-commit a43f1bea6273e87d9e5cb6e428f560ae7a59223b
+commit 94c4b7300cc515330bf798bb45eb0d68e2c84aa0
Author: Even Rouault <even.rouault@spatialys.com>
-Date: 2017-02-13 12:36:45 +0100
-
- Remove warnings related to empty tag-trees.
-
- Decoding some valid .jp2 files like Sentinel2 datasets leads to warnings like:
- No incltree created.
- tgt_create tree->numnodes == 0, no tree created.
- No imsbtree created.
- tgt_create tree->numnodes == 0, no tree created.
-
- Besides that, the image is correctly decoded. So there is no reason to emit
- those warnings.
-
-commit 7113c4e3bbb4b397ae0c27cbfb645ae8acfee042
-Author: Antonin Descampe <antonin@gmail.com>
-Date: 2016-10-03 23:47:10 +0200
-
- Update THANKS.md
-
-commit b8197de7160f4b8b072107a7ac62d25705e3fb88
-Author: Antonin Descampe <antonin@gmail.com>
-Date: 2016-10-03 23:45:44 +0200
-
- Update CHANGELOG.md
-
-commit b0791988385053075c5998bf0fe4f56a249ad56f
-Author: Antonin Descampe <antonin@gmail.com>
-Date: 2016-09-29 22:06:23 +0200
-
- fix abi-check and limit upload to website for master
-
-commit 110d31891b459c673c7c788cf8170cadfd2201bf
-Author: Antonin Descampe <antonin@gmail.com>
-Date: 2016-09-29 21:44:38 +0200
-
- fix abi-check
-
-commit cc0c71c30b2f9c3c28b67a027b39df1fda0d1c9b
-Author: Antonin Descampe <antonin@gmail.com>
-Date: 2016-09-29 20:23:01 +0200
-
- fix abi-check
-
-commit 5695ac15ff961fb56ecee8455bca325444f37694
-Author: Antonin Descampe <antonin@gmail.com>
-Date: 2016-09-28 20:33:31 +0200
-
- Update abi-check scripts for v2.1.2
-
-commit df5e8628f29a0138fcfe327527d2d0eda7c9c664
-Author: Antonin Descampe <antonin@gmail.com>
-Date: 2016-09-28 20:15:53 +0200
-
- Update NEWS.md for v2.1.2
-
-commit b0c0f0ff04aa6088f690b086c49601bbf66fceee
-Author: Antonin Descampe <antonin@gmail.com>
-Date: 2016-09-28 20:14:06 +0200
-
- Update Changelog for v2.1.2
-
-commit 9afc1699f0220d16f71860c1083d8c1b627e30fe
-Author: Antonin Descampe <antonin@gmail.com>
-Date: 2016-09-28 18:55:02 +0200
-
- Update version number for future release 2.2.0
-
-commit 34dae137a9a8c04feaa9763ae7e09a86ecb10400
-Author: Mathieu Malaterre <mathieu.malaterre@gmail.com>
-Date: 2016-09-26 12:01:31 +0200
+Date: 2017-07-26 21:39:50 +0200
- OPENJPEG_NAMESPACE is configurable by user
+ T1 decoder: check code stream errors when predictable termination is enabled and emit a warning when errors are found
-commit 4d5c5e7c4891491d61c7deaf77d9238b3621c32a
-Author: Mathieu Malaterre <mathieu.malaterre@gmail.com>
-Date: 2016-09-26 11:26:55 +0200
-
- Remove typos from comments and man pages
-
-commit fac916f72a162483a4d6d804fd070fdf32f402ed
-Author: Matthieu Darbois <mayeut@users.noreply.github.com>
-Date: 2016-09-22 00:30:34 +0200
-
- Fix PNM file reading (#847)
-
- Malformed PNM file could cause a crash in opj_compress.
- Checks were added to prevent this.
-
- Fixes #843
- Updates #440
-
-commit 8715ce2749d1e5a1e9c77646e9a2ddf0ec82bac9
-Author: Stefan Weil <sw@weilnetz.de>
-Date: 2016-09-21 21:15:25 +0200
-
- Fix some issues reported by Coverity Scan (#846)
-
- * test_tile_decoder: Fix potential buffer overflow (coverity)
-
- CID 1190155 (#1 of 1): Unbounded source buffer (STRING_SIZE)
-
- Using a pointer instead of buffer of fixed size avoids the limit
- for the length of the input file name.
-
- Signed-off-by: Stefan Weil <sw@weilnetz.de>
-
- * test_tile_encoder: Fix potential buffer overflow (coverity)
-
- CID 1190154 (#1 of 1): Unbounded source buffer (STRING_SIZE)
-
- Using a pointer instead of buffer of fixed size avoids the limit
- for the length of the output file name. This implies that the length
- can exceed 255, so the data type for variable len had to be fixed, too.
-
- Signed-off-by: Stefan Weil <sw@weilnetz.de>
-
- * openjpip: Initialize data before returning it
-
- This fixes an error reported by Coverity:
-
- CID 1190143 (#1 of 1): Uninitialized scalar variable (UNINIT)
-
- Signed-off-by: Stefan Weil <sw@weilnetz.de>
-
-commit 045aa4d9f297b8d3d5f89e9983a54252d103a3da
-Author: Stefan Weil <sw@weilnetz.de>
-Date: 2016-09-21 13:17:09 +0200
-
- Fix potential out-of-bounds read (coverity) (#844)
-
- * query_parser: Fix potential out-of-bounds read (coverity)
-
- CID 1190207 (#1 of 1): Out-of-bounds read (OVERRUN)
-
- Variable i must be checked before testing query_param.box_type.
-
- Signed-off-by: Stefan Weil <sw@weilnetz.de>
-
- * jpip_parser: Fix potential out-of-bounds read (coverity)
-
- CID 1190206 (#1 of 1): Out-of-bounds read (OVERRUN)
-
- Variable i must be checked before testing query_param.box_type.
-
- Signed-off-by: Stefan Weil <sw@weilnetz.de>
-
-commit da940424816e11d624362ce080bc026adffa26e8
-Merge: 31d44f0 893143c
-Author: Antonin Descampe <antonin@gmail.com>
-Date: 2016-09-20 18:59:30 +0200
-
- Merge pull request #834 from trylab/issue833
-
- Fix issue 833.
-
-commit 31d44f02807a6ce02feead4326e58fac9681c045
-Author: Antonin Descampe <antonin@gmail.com>
-Date: 2016-09-20 18:48:06 +0200
-
- Disable automatic compilation of t1_generate_luts
-
- Fix #831
-
-commit 3aaeea7ce8c2065d29483817b7fd07226601851c
-Author: Antonin Descampe <antonin@gmail.com>
-Date: 2016-09-16 17:54:12 +0200
-
- renamed USE_THREAD to OPJ_USE_THREAD
-
- renaming to be consistent with previous OPJ CMake options
-
-commit 6e7616c83cb01d9b7a5a35e093ff9ff6741acc74
-Author: Matthieu Darbois <mayeut@users.noreply.github.com>
-Date: 2016-09-15 23:51:34 +0200
+commit 5e795d90a1e47616e0c7a2e39381c13ccf7fd6dd
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-07-26 21:06:38 +0200
- Remove TODO for overflow check (#842)
-
- The check was already done. It’s been simplified.
- Reformat to get consistent style throughout the functions.
+ Spelling fixes (patch by ka7, #890, rebased on top of master)
-commit 9a07ccb3d0f076388e4da684a3bfd4327125c721
-Author: Matthieu Darbois <mayeut@users.noreply.github.com>
-Date: 2016-09-15 01:57:53 +0200
+commit 2be20ce7d9996e960d79f3ad6ec439a9895849ed
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-07-26 21:04:01 +0200
- Add overflow checks for opj_aligned_malloc (#841)
-
- See
- https://pdfium.googlesource.com/pdfium/+/b20ab6c7acb3be1393461eb650ca8fa4660c937e/third_party/libopenjpeg20/0020-opj_aligned_malloc.patch
+ Reformat src/bin/wx/OPJViewer/source/OPJThreads.cpp src/bin/wx/OPJViewer/source/imagjpeg2000.cpp wrapping/java/openjp2/JavaOpenJPEG.c
-commit f88c9974e27161427c003dda5d89f61a5a3995e9
-Author: Matthieu Darbois <mayeut@users.noreply.github.com>
-Date: 2016-09-14 23:46:46 +0200
+commit 94cc97c58acfa574e734fac5eb673c516c0ac469
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-07-26 20:13:09 +0200
- Flags in T1 shall be unsigned (#840)
-
- This will remove some conversion warnings
+ opj_decompress: fix null pointer dereference on comps[].data on id_000167,sig_11,src_006079,op_havoc,rep_4 (#939)
-commit 0954bc11e3ab6a39d86e5ed51286da4b8989743d
-Author: Matthieu Darbois <mayeut@users.noreply.github.com>
-Date: 2016-09-14 00:12:43 +0200
+commit 8d2e69e37d01bf6a0440d3109d92235c3c586ffe
+Author: Even Rouault <even.rouault@spatialys.com>
+Date: 2017-07-26 19:49:38 +0200
- Fix some warnings (#838)
+ Fix assertion / memory leak in opj_j2k_merge_ppt() on corrupted images (#939)
- Fix warnings introduced by uclouvain/openjpeg#786
+ 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.
...</pre></div>