1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
4 <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
5 <meta name="keywords" content="OpenJPEG, current, changes, changelog" />
6 <meta name="description" content="Log of changes in the package" />
7 <link rel="stylesheet" type="text/css" href="../../../css/common.css" />
8 <link rel="stylesheet" type="text/css" href="../../../css/changelog.css" />
12 OpenJPEG current: changelog
18 <table cellpadding='0' cellspacing='0'><tr><td align='center'><h1 class='tool'><a title='Home: ABI tracker for OpenJPEG' href='../../../timeline/openjpeg/index.html' class='tool'>ABI<br/>Tracker</a></h1></td><td width='30px;'></td><td><h1>(OpenJPEG)</h1></td></tr></table><hr/>
21 <h1>Changelog from Git</h1><br/><br/>
22 <div class='changelog'>
23 <pre class='wrap'>commit 5e200452db84947f4eb893ae7f02f7dd9a358378
24 Author: Even Rouault <even.rouault@spatialys.com>
25 Date: 2017-08-09 15:04:29 +0200
27 Doc: fix error in previous commit
29 commit 9203e8ec51a1c1c1a358a9cbafdf3391549ebc80
30 Author: Even Rouault <even.rouault@spatialys.com>
31 Date: 2017-08-09 14:50:59 +0200
33 tcd.h: doc fixes and improvements
35 commit 11b1ffb373d8e41705348080ba5e74a4ffe4148c
36 Author: Even Rouault <even.rouault@spatialys.com>
37 Date: 2017-08-09 14:13:58 +0200
39 Document qmfbid values
41 commit ac375ac9f5b4ae47501b60795e905e3d25dd00f8
42 Author: Even Rouault <even.rouault@spatialys.com>
43 Date: 2017-08-09 11:34:08 +0200
45 Partial revert BPC related check of #975 (#979)
47 PR #975 introduced a check that rejects images that have different bit depth/sign
48 per compoment in SIZ marker if the JP2 IHDR box has BPC != 255
49 This didn't work properly if decoding a .j2k file since the new bit added in
50 opj_cp_t wasn't initialized to the right value.
51 For clarity, tThis new bit has also been renamed to allow_different_bit_depth_sign
53 But looking closer at the code, it seems we were already tolerant to inconsistencies.
54 For example we parsed a JP2 BPCC box even if BPC != 255 (just a warning is emitted)
55 So failing hard in opj_j2k_read_siz() wouldn't be very inconsistent, and that
56 alone cannot protect against other issues, so just emit a warning if BPC != 255
57 and the SIZ marker contains different bit depth/sign per component.
59 Note: we could also check that the content of JP2 BPCC box is consistant with the one
62 commit c38bdbef4f3a5888948903247532fc8cf4284c00
63 Author: Even Rouault <even.rouault@spatialys.com>
64 Date: 2017-08-09 10:03:59 +0200
66 opj_decompress: document -quiet option, and remove spurious newline output
68 commit 0eceb4494c23d141ddf242209b92f07bc942b437
69 Author: Even Rouault <even.rouault@spatialys.com>
70 Date: 2017-08-09 09:50:39 +0200
72 src/bin/jpwl/convert.c pgxtoimage(): add missing fclose() (#977)
74 commit 5a560ebf5138ebc241e9962306ce74bfc50fc69c
75 Author: Even Rouault <even.rouault@spatialys.com>
76 Date: 2017-08-09 09:42:30 +0200
78 imagetobmp: avoid shift by -1 (relates to #811)
80 commit 0c07950cb3f318df5b2051ae5d96bef553bb9966
81 Author: Antonin Descampe <antonin@gmail.com>
82 Date: 2017-08-08 18:05:37 -0700
86 format specifier mismatch in #975
88 commit 0394f8d0f1c981e0bc587beddc14d1fb0b265b1b
89 Merge: 3b1b067 bc3cb74
90 Author: Antonin Descampe <antonin@descampe.net>
91 Date: 2017-08-08 16:51:54 -0700
93 Merge pull request #975 from szukw000/changes-for-afl-tests
95 Catch images broken by AFL
97 commit 3b1b0672663b59853b63d48f94b63ca497883527
98 Merge: 2fbd4bb 9211469
99 Author: Even Rouault <even.rouault@mines-paris.org>
100 Date: 2017-08-07 20:17:36 +0200
102 Merge pull request #968 from rouault/reduce_memory_decoding
104 Reduce memory decoding
106 commit 92114694a48638e86c07e4adf11b78878045c8a9
107 Author: Even Rouault <even.rouault@spatialys.com>
108 Date: 2017-07-06 19:34:21 +0200
110 Slight improvement in management of code block chunks
112 Instead of having the chunk array at the segment level, we can move it down to
113 the codeblock itself since segments are filled in sequential order.
114 Limit the number of memory allocation, and decrease slightly the memory usage.
118 n4: 1871312549 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
119 n1: 1610689344 0x4E781E7: opj_aligned_malloc (opj_malloc.c:61)
120 n1: 1610689344 0x4E71D1B: opj_alloc_tile_component_data (tcd.c:676)
121 n1: 1610689344 0x4E726CF: opj_tcd_init_decode_tile (tcd.c:816)
122 n1: 1610689344 0x4E4BE39: opj_j2k_read_tile_header (j2k.c:8617)
123 n1: 1610689344 0x4E4C902: opj_j2k_decode_tiles (j2k.c:10348)
124 n1: 1610689344 0x4E4E3CE: opj_j2k_decode (j2k.c:7846)
125 n1: 1610689344 0x4E53002: opj_jp2_decode (jp2.c:1564)
126 n0: 1610689344 0x40374E: main (opj_decompress.c:1459)
127 n1: 219232541 0x4E4BC50: opj_j2k_read_tile_header (j2k.c:4683)
128 n1: 219232541 0x4E4C902: opj_j2k_decode_tiles (j2k.c:10348)
129 n1: 219232541 0x4E4E3CE: opj_j2k_decode (j2k.c:7846)
130 n1: 219232541 0x4E53002: opj_jp2_decode (jp2.c:1564)
131 n0: 219232541 0x40374E: main (opj_decompress.c:1459)
132 n1: 23893200 0x4E72735: opj_tcd_init_decode_tile (tcd.c:1225)
133 n1: 23893200 0x4E4BE39: opj_j2k_read_tile_header (j2k.c:8617)
134 n1: 23893200 0x4E4C902: opj_j2k_decode_tiles (j2k.c:10348)
135 n1: 23893200 0x4E4E3CE: opj_j2k_decode (j2k.c:7846)
136 n1: 23893200 0x4E53002: opj_jp2_decode (jp2.c:1564)
137 n0: 23893200 0x40374E: main (opj_decompress.c:1459)
138 n0: 17497464 in 52 places, all below massif's threshold (1.00%)
140 commit ca34d13e76a588a00171e57690c1deeaf068723a
141 Author: Even Rouault <even.rouault@spatialys.com>
142 Date: 2017-07-06 16:11:11 +0200
144 Decoding: do not allocate memory for the codestream of each codeblock
146 Currently we allocate at least 8192 bytes for each codeblock, and copy
147 the relevant parts of the codestream in that per-codeblock buffer as we
149 As the whole codestream for the tile is ingested in memory and alive
150 during the decoding, we can directly point to it instead of copying. But
151 to do that, we need an intermediate concept, a 'chunk' of code-stream segment,
152 given that segments may be made of data at different places in the code-stream
153 when quality layers are used.
155 With that change, the decoding of MAPA_005.jp2 goes down from the previous
156 improvement of 2.7 GB down to 1.9 GB.
160 n4: 1885648469 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
161 n1: 1610689344 0x4E78287: opj_aligned_malloc (opj_malloc.c:61)
162 n1: 1610689344 0x4E71D7B: opj_alloc_tile_component_data (tcd.c:676)
163 n1: 1610689344 0x4E7272C: opj_tcd_init_decode_tile (tcd.c:816)
164 n1: 1610689344 0x4E4BDD9: opj_j2k_read_tile_header (j2k.c:8618)
165 n1: 1610689344 0x4E4C8A2: opj_j2k_decode_tiles (j2k.c:10349)
166 n1: 1610689344 0x4E4E36E: opj_j2k_decode (j2k.c:7847)
167 n1: 1610689344 0x4E52FA2: opj_jp2_decode (jp2.c:1564)
168 n0: 1610689344 0x40374E: main (opj_decompress.c:1459)
169 n1: 219232541 0x4E4BBF0: opj_j2k_read_tile_header (j2k.c:4685)
170 n1: 219232541 0x4E4C8A2: opj_j2k_decode_tiles (j2k.c:10349)
171 n1: 219232541 0x4E4E36E: opj_j2k_decode (j2k.c:7847)
172 n1: 219232541 0x4E52FA2: opj_jp2_decode (jp2.c:1564)
173 n0: 219232541 0x40374E: main (opj_decompress.c:1459)
174 n1: 39822000 0x4E727A9: opj_tcd_init_decode_tile (tcd.c:1219)
175 n1: 39822000 0x4E4BDD9: opj_j2k_read_tile_header (j2k.c:8618)
176 n1: 39822000 0x4E4C8A2: opj_j2k_decode_tiles (j2k.c:10349)
177 n1: 39822000 0x4E4E36E: opj_j2k_decode (j2k.c:7847)
178 n1: 39822000 0x4E52FA2: opj_jp2_decode (jp2.c:1564)
179 n0: 39822000 0x40374E: main (opj_decompress.c:1459)
180 n0: 15904584 in 52 places, all below massif's threshold (1.00%)
182 commit 373520db309430b68dd9ff09cba03a25f711a88e
183 Author: Even Rouault <even.rouault@spatialys.com>
184 Date: 2017-07-06 13:23:29 +0200
186 Add documentation for magic values in the code
188 commit 434ace4ff74cc3eee401d4d3c02668c1d85f2a0d
189 Author: Even Rouault <even.rouault@spatialys.com>
190 Date: 2017-07-06 02:17:26 +0200
192 opj_jp2_apply_pclr() also needs to use opj_image_data_alloc/opj_image_data_free
194 commit 0c1fc0593ef5b918068709fd74d76e4824c90e7c
195 Author: Even Rouault <even.rouault@spatialys.com>
196 Date: 2017-07-06 02:02:25 +0200
198 Complementary fix to previous commit
200 commit f58aab9d6a57e48bdc60e15dd373c24de74719a9
201 Author: Even Rouault <even.rouault@spatialys.com>
202 Date: 2017-07-06 01:47:40 +0200
204 Add opj_image_data_alloc() / opj_image_data_free()
206 As bin/common/color.c used to directly call malloc()/free(), we need
207 to export functions dedicated to allocating/freeing image component data.
209 commit 61fb5dd7f81c2e3dfabbb99f59dc89572d59fa37
210 Author: Even Rouault <even.rouault@spatialys.com>
211 Date: 2017-07-06 01:05:24 +0200
213 Fix crash on Windows due to b7594c0fcb9dd3aa6356d72c4a525d76168da689
215 b7594c0fcb9dd3aa6356d72c4a525d76168da689 may put opj_tcd_tilecomp_t->data
216 allocated by opj_alloc_tile_component_data() as the image->comps[].data. As
217 opj_alloc_tile_component_data() use opj_aligned_malloc() we must be sure to
218 ue opj_alined_malloc()/_free() in all places where we alloc/free
219 image->comps[].data.
221 Note: this might have some compatibility impact in case user code does itself
222 the allocation/free of image->comps[].data
224 commit 793edc38e41700e9b4cda4b7f9c79aba95b8d989
225 Author: Even Rouault <even.rouault@spatialys.com>
226 Date: 2017-07-05 23:48:28 +0200
228 Decrease memory consumption for whole image single tile decoding.
230 We can use the same buffer for the tile decoding and the final image, and
231 save the intermediate buffer to transfer between those.
233 Effect on the decoding of MAPA (9944 x 13498 x 3 components of size byte)
235 Peak memory from 4.5 GB to 2.7 GB
238 n5: 2699708767 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
239 n1: 1610689344 0x4E77E07: opj_aligned_malloc (opj_malloc.c:61) <-- final image
240 n1: 1610689344 0x4E7195B: opj_alloc_tile_component_data (tcd.c:676)
241 n1: 1610689344 0x4E722D2: opj_tcd_init_decode_tile (tcd.c:816)
242 n1: 1610689344 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
243 n1: 1610689344 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
244 n1: 1610689344 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
245 n1: 1610689344 0x4E52E42: opj_jp2_decode (jp2.c:1564)
246 n0: 1610689344 0x40369E: main (opj_decompress.c:1459)
247 n1: 815554560 0x4E72231: opj_tcd_init_decode_tile (tcd.c:1217) <-- working memory for code blocks: 9944*13498/64/64*8192*3
248 n1: 815554560 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
249 n1: 815554560 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
250 n1: 815554560 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
251 n1: 815554560 0x4E52E42: opj_jp2_decode (jp2.c:1564)
252 n0: 815554560 0x40369E: main (opj_decompress.c:1459)
253 n1: 219758391 0x4E4C0BF: opj_j2k_read_tile_header (j2k.c:4661) <-- ingestion of code stream
254 n1: 219758391 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
255 n1: 219758391 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
256 n1: 219758391 0x4E52E42: opj_jp2_decode (jp2.c:1564)
257 n0: 219758391 0x40369E: main (opj_decompress.c:1459)
258 n1: 39822000 0x4E7224F: opj_tcd_init_decode_tile (tcd.c:1224) <-- OPJ_J2K_DEFAULT_NB_SEGS*sizeof(opj_tcd_seg_t) per codeblock
259 n1: 39822000 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
260 n1: 39822000 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
261 n1: 39822000 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
262 n1: 39822000 0x4E52E42: opj_jp2_decode (jp2.c:1564)
263 n0: 39822000 0x40369E: main (opj_decompress.c:1459)
264 n0: 13884472 in 49 places, all below massif's threshold (1.00%)
267 n5: 4493329848 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
268 n2: 1610709160 0x4E77C87: opj_aligned_malloc (opj_malloc.c:61)
269 n1: 1610689344 0x4E717DB: opj_alloc_tile_component_data (tcd.c:676)
270 n1: 1610689344 0x4E72152: opj_tcd_init_decode_tile (tcd.c:816)
271 n1: 1610689344 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
272 n1: 1610689344 0x4E4C64A: opj_j2k_decode_tiles (j2k.c:10318)
273 n1: 1610689344 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
274 n1: 1610689344 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
275 n0: 1610689344 0x40369E: main (opj_decompress.c:1459)
276 n0: 19816 in 2 places, all below massif's threshold (1.00%)
277 n1: 1610689344 0x4E43F36: opj_j2k_update_image_data.isra.7 (j2k.c:8743)
278 n1: 1610689344 0x4E4C5C1: opj_j2k_decode_tiles (j2k.c:10358)
279 n1: 1610689344 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
280 n1: 1610689344 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
281 n0: 1610689344 0x40369E: main (opj_decompress.c:1459)
282 n1: 815554560 0x4E720B1: opj_tcd_init_decode_tile (tcd.c:1217)
283 n1: 815554560 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
284 n1: 815554560 0x4E4C64A: opj_j2k_decode_tiles (j2k.c:10318)
285 n1: 815554560 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
286 n1: 815554560 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
287 n0: 815554560 0x40369E: main (opj_decompress.c:1459)
288 n1: 402672336 0x4E4C545: opj_j2k_decode_tiles (j2k.c:10336)
289 n1: 402672336 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
290 n1: 402672336 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
291 n0: 402672336 0x40369E: main (opj_decompress.c:1459)
292 n0: 53704448 in 58 places, all below massif's threshold (1.00%)
294 commit bc3cb7410023e9d0c7ff9972a0bc8cf1fe9b32a4
295 Author: szukw000 <szukw000@arcor.de>
296 Date: 2017-08-07 16:44:28 +0200
298 Changes for converttif.c to fix tsize_t
300 commit 2fbd4bb0b9c6178f12c852dc40db6ab05734bfe2
301 Author: Even Rouault <even.rouault@spatialys.com>
302 Date: 2017-08-04 18:01:29 +0200
304 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
306 commit 57e36dbfeb57451444c5c20eab66ab0bedd3d3b3
307 Author: szukw000 <szukw000@arcor.de>
308 Date: 2017-08-02 17:27:08 +0200
310 First change on changes-for-afl-tests
312 commit 155fc2e279b85bd04709967b2797de4f69b0cf3e
313 Author: Antonin Descampe <antonin@gmail.com>
314 Date: 2017-08-02 17:07:29 +0200
316 Update abi-check to take into account new defaults for "add" git command
318 commit eb90d8ec935eba934bfd260cc80c8ef445dff4fd
319 Author: Antonin Descampe <antonin@gmail.com>
320 Date: 2017-08-02 16:50:11 +0200
322 WIP: fix abi-check and automatic upload
324 commit 48125b0d124bc668b971b1f5df5a3c39798cfcf9
325 Author: Even Rouault <even.rouault@spatialys.com>
326 Date: 2017-07-31 17:35:10 +0200
328 src/bin/jpwl/convert.c: add missing fclose() in error code path (suggested by maddin200, #976)
330 commit 00f45684a8339e69ed55df2397f3c19d09fecaed
331 Author: szukw000 <szukw000@arcor.de>
332 Date: 2017-07-31 13:58:08 +0200
334 Catch images broken by AFL
336 commit 13cde9fa37249628af6b6f10601b733f87a025f4
337 Author: Even Rouault <even.rouault@spatialys.com>
338 Date: 2017-07-30 19:46:52 +0200
340 src/lib/openjp2/*.h: use OPJ_ prefix for inclusion guards instead of reserved __ (#587)
342 commit 9a6d41d22b1a4f17a376d2f6f208c52c58b8e4b3
343 Author: Even Rouault <even.rouault@spatialys.com>
344 Date: 2017-07-30 19:27:01 +0200
346 opj_event_msg(): force zero termination of buffer
348 commit b716f8616394252724ca0811eab3a20ab42b2189
349 Author: Even Rouault <even.rouault@spatialys.com>
350 Date: 2017-07-30 19:26:47 +0200
352 Fix breakage of 22bf99ce0220811bfce1562ee61423cb0245b683
354 commit 22bf99ce0220811bfce1562ee61423cb0245b683
355 Author: Even Rouault <even.rouault@spatialys.com>
356 Date: 2017-07-30 19:07:16 +0200
358 Test return value of opj_j2k_setup_decoding_tile() (commit https://github.com/uclouvain/openjpeg/pull/561/commits/ec31fa0c7f1ff8979312c07296cba41584c458a0 by ak-dxdy, #561)
360 commit ffa9a4f6585dc199fb850dee4255e7a7b84aad63
361 Author: Even Rouault <even.rouault@spatialys.com>
362 Date: 2017-07-30 18:46:34 +0200
364 Fix warnings in USE_JPIP compilation mode
366 commit c22cbd8bdf8ff2ae372f94391a4be2d322b36b41
367 Author: Even Rouault <even.rouault@spatialys.com>
368 Date: 2017-07-30 18:43:25 +0200
370 Avoid heap buffer overflow in function pnmtoimage of convert.c, and unsigned integer overflow in opj_image_create() (CVE-2016-9118, #861)
372 commit 83342f2aafcab4599b49f780e35fd249e8402b61
373 Author: Even Rouault <even.rouault@spatialys.com>
374 Date: 2017-07-30 18:18:59 +0200
376 Fix Doxygen warnings (patch derived from Winfried's doxygen-dif.txt.zip, #849)
378 commit 4748318136626dd9e841ea1aa8b52adfbab26772
379 Author: Even Rouault <even.rouault@spatialys.com>
380 Date: 2017-07-30 17:26:03 +0200
382 j2k.c: remove hardcoded constants related to m_state, and useless FIXME
384 commit e23e0c94d0eb30623bc67be19c38c22ee5378344
385 Author: Even Rouault <even.rouault@spatialys.com>
386 Date: 2017-07-30 16:48:15 +0200
388 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
390 commit 1ed8d67797ef57143e2c855b602016bf9d89337d
391 Author: Even Rouault <even.rouault@spatialys.com>
392 Date: 2017-07-30 15:35:47 +0200
394 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
396 commit 68832af20e3b3710424947e12762b6b52d3b6ac0
397 Author: Even Rouault <even.rouault@spatialys.com>
398 Date: 2017-07-30 15:22:24 +0200
400 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
402 commit 517bf6fd86dae18b62390a03533d30da0e5bb701
403 Author: Even Rouault <even.rouault@spatialys.com>
404 Date: 2017-07-29 21:11:23 +0200
406 src/bin/jpwl/convert.c: fix memleak (fix suggested by maddin200, #631)
408 commit 51eb86d8f7a6297a4f0e8ca44977b72532de0353
409 Author: Even Rouault <even.rouault@spatialys.com>
410 Date: 2017-07-29 19:43:23 +0200
412 Fix warnings in pi.c raised by VS11 analyze (#190)
414 commit 397f62c0a838e15d667ef50e27d5d011d2c79c04
415 Author: Even Rouault <even.rouault@spatialys.com>
416 Date: 2017-07-29 19:13:49 +0200
418 Fix write heap buffer overflow in opj_mqc_byteout(). Discovered by Ke Liu of Tencent's Xuanwu LAB (#835)
420 commit 11445eddad7e7fa5b273d1c83c91011c44e5d586
421 Author: Even Rouault <even.rouault@spatialys.com>
422 Date: 2017-07-29 19:03:13 +0200
424 opj_pi_update_decode_poc(): limit layno1 to the number of layers (CVE-2016-1626 and CVE-2016-1628, #850)
426 This has been recently fixed in a less elegant way per
427 80818c39f5bfbac37768fcee95b0ffeceaa77264
429 commit 3fbe71369019df0b47c7a2be4fab8c05768f2f32
430 Author: Even Rouault <even.rouault@spatialys.com>
431 Date: 2017-07-29 18:38:16 +0200
433 opj_tcd_get_decoded_tile_size(): fix potential UINT32 overflow (#854, CVE-2016-5152)
435 Fix derived from https://pdfium.googlesource.com/pdfium.git/+/d8cc503575463ff3d81b22dad292665f2c88911e/third_party/libopenjpeg20/0018-tcd_get_decoded_tile_size.patch
437 commit 5a3e7aaf339943bc988adbada39a1fc8f5046899
438 Author: Even Rouault <even.rouault@spatialys.com>
439 Date: 2017-07-29 17:56:12 +0200
441 color_cielab_to_rgb(): reject images with components of different dimensions to void read heap buffer overflow (#909)
443 commit 784d4d47e97b5d0fccccbd931349997a0e2074cc
444 Author: Even Rouault <even.rouault@spatialys.com>
445 Date: 2017-07-29 17:51:10 +0200
447 Fix breakage of 2fa0fc61f2d546c8b67e7c5a9cbc61d98e1f7af0 (#970)
449 commit 2fa0fc61f2d546c8b67e7c5a9cbc61d98e1f7af0
450 Author: Even Rouault <even.rouault@spatialys.com>
451 Date: 2017-07-29 17:28:55 +0200
453 imagetopnm(): make sure the alpha component has same dimension as other components to avoid read heap buffer overflow (#970)
455 commit db9ef99f6dd054a84fa8382c02869fb0656abfc8
456 Author: Even Rouault <even.rouault@spatialys.com>
457 Date: 2017-07-29 16:34:35 +0200
459 opj_t1_decode_cblk(): avoid undefined shift behaviour. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2487. Credit to OSS Fuzz
461 commit f6551f822fe020843299bd807ec6989abd070b2c
462 Author: Even Rouault <even.rouault@spatialys.com>
463 Date: 2017-07-29 16:29:11 +0200
465 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
467 commit 9906fbf737692486cebabe98169988d818e2e66a
468 Author: Even Rouault <even.rouault@spatialys.com>
469 Date: 2017-07-29 16:22:36 +0200
471 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
473 commit 71b4f5b124d14ed609763b11e19d2d480bc32f58
474 Author: Even Rouault <even.rouault@spatialys.com>
475 Date: 2017-07-29 15:52:11 +0200
477 opj_pi_next_pcrl(): avoid undefined shift behaviour. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2787. Credit to OSS Fuzz
479 commit d6654d906c1ae66590b6d600458a91f1ee923de5
480 Author: Even Rouault <even.rouault@spatialys.com>
481 Date: 2017-07-28 22:15:47 +0200
483 opj_int_ceildiv(): fix int32 overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2494. Credit to OSS Fuzz
485 commit 361c4506fdfb9b6f0e41d86d5d0ea1efb5704ecf
486 Author: Even Rouault <even.rouault@spatialys.com>
487 Date: 2017-07-28 22:06:26 +0200
489 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
491 commit 7bdbe490cba9990916f94a40379cc787434340ff
492 Author: Even Rouault <even.rouault@spatialys.com>
493 Date: 2017-07-28 21:55:22 +0200
495 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
497 commit 16aeb9282f6b3877aa8365c461ba8d3d1338adae
498 Author: Even Rouault <even.rouault@spatialys.com>
499 Date: 2017-07-28 21:39:30 +0200
501 Fix null pointer dereference in opj_j2k_add_mct() (#895)
503 Fixes openjeg-crashes-2017-07-27/issue879-poc1.j2k of #895
505 commit c5bf5ef4d6552e9159aaad29cb27826acd1a3389
506 Author: Even Rouault <even.rouault@spatialys.com>
507 Date: 2017-07-28 21:29:55 +0200
509 Avoid use-after-free when a MCT marker is found after a MCC one (#895)
511 Fixes openjeg-crashes-2017-07-27/issue880-poc2.j2k of #895
513 commit e03e9474667e5117341351699f0b1dbb06f93346
514 Author: Even Rouault <even.rouault@spatialys.com>
515 Date: 2017-07-27 22:29:17 +0200
517 Avoid undefined shift behaviour if bit depth == 32 (#895)
519 Fixes openjeg-crashes-2017-07-27/id:000000,sig:11,src:003798,op:ext_AO,pos:128.jp2
521 commit 820fcfe8bb101a2862c076b02c9b6b636ce39d2f
522 Author: Even Rouault <even.rouault@spatialys.com>
523 Date: 2017-07-27 19:34:54 +0200
525 opj_j2k_update_image_data / opj_tcd_update_tile_data: fix unaligned load/store (#895)
527 When components don't have the same width, unaligned load/store are possible.
529 Fixes openjeg-crashes-2017-07-27/id:000000,sig:11,src:001342,op:flip4,pos:162.jp2 of #895
531 commit 6c4e5bacb9d9791fc6ff074bd7958b3820d70514
532 Author: Even Rouault <even.rouault@spatialys.com>
533 Date: 2017-07-27 19:22:14 +0200
535 opj_pi_next_rpcl / opj_pi_next_pcrl / opj_pi_next_cprl: avoid int overflow (#895)
537 Fixes int overflow on openjeg-crashes-2017-07-27/id:000000,sig:08,src:000879,op:flip2,pos:128.jp2
539 commit 178194c093422c9564efc41f9ecb5c630b43f723
540 Author: Even Rouault <even.rouault@spatialys.com>
541 Date: 2017-07-27 18:51:51 +0200
543 opj_jp2_check_color(): replace assertion regarding mtyp by runtime check (#672, #895)
545 Fixes test case openjeg-crashes-2017-07-27/id:000000,sig:06,src:000001,op:flip1,pos:808.jp2
548 commit d6fa30099797c68c6a67decf58571dd59dbf734b
549 Author: Even Rouault <even.rouault@spatialys.com>
550 Date: 2017-07-26 23:25:38 +0200
552 Avoids undefined shift behaviour in m_dc_level_shift computation
554 Fixes warning found on clusterfuzz-testcase-minimized-5146316340461568
555 https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2495
559 commit a88cbb6a0b3539461dfb29922102953b7a7fc3a7
560 Author: Even Rouault <even.rouault@spatialys.com>
561 Date: 2017-07-26 22:53:59 +0200
563 Fix various undefined shift behaviour in pi.c
565 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2496
568 commit 6c5fe9407b7768eb2ac55b83511bc103551d207a
569 Author: Even Rouault <even.rouault@spatialys.com>
570 Date: 2017-07-26 22:22:44 +0200
572 Avoid potential undefined shift behaviour in opj_bio_read() from opj_t2_read_packet_header()
574 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2485
577 commit dbf527bf2a53bc88e6cf1373991002ec0e8e22a1
578 Merge: 5e795d9 94c4b73
579 Author: Even Rouault <even.rouault@mines-paris.org>
580 Date: 2017-07-26 22:05:32 +0200
582 Merge pull request #800 from rouault/tier1_optimizations_multithreading_pterm_check
584 Implement predictive termination check
586 commit 94c4b7300cc515330bf798bb45eb0d68e2c84aa0
587 Author: Even Rouault <even.rouault@spatialys.com>
588 Date: 2017-07-26 21:39:50 +0200
590 T1 decoder: check code stream errors when predictable termination is enabled and emit a warning when errors are found
592 commit 5e795d90a1e47616e0c7a2e39381c13ccf7fd6dd
593 Author: Even Rouault <even.rouault@spatialys.com>
594 Date: 2017-07-26 21:06:38 +0200
596 Spelling fixes (patch by ka7, #890, rebased on top of master)
598 commit 2be20ce7d9996e960d79f3ad6ec439a9895849ed
599 Author: Even Rouault <even.rouault@spatialys.com>
600 Date: 2017-07-26 21:04:01 +0200
602 Reformat src/bin/wx/OPJViewer/source/OPJThreads.cpp src/bin/wx/OPJViewer/source/imagjpeg2000.cpp wrapping/java/openjp2/JavaOpenJPEG.c