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