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 3b1b0672663b59853b63d48f94b63ca497883527
24 Merge: 2fbd4bb 9211469
25 Author: Even Rouault <even.rouault@mines-paris.org>
26 Date: 2017-08-07 20:17:36 +0200
28 Merge pull request #968 from rouault/reduce_memory_decoding
30 Reduce memory decoding
32 commit 92114694a48638e86c07e4adf11b78878045c8a9
33 Author: Even Rouault <even.rouault@spatialys.com>
34 Date: 2017-07-06 19:34:21 +0200
36 Slight improvement in management of code block chunks
38 Instead of having the chunk array at the segment level, we can move it down to
39 the codeblock itself since segments are filled in sequential order.
40 Limit the number of memory allocation, and decrease slightly the memory usage.
44 n4: 1871312549 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
45 n1: 1610689344 0x4E781E7: opj_aligned_malloc (opj_malloc.c:61)
46 n1: 1610689344 0x4E71D1B: opj_alloc_tile_component_data (tcd.c:676)
47 n1: 1610689344 0x4E726CF: opj_tcd_init_decode_tile (tcd.c:816)
48 n1: 1610689344 0x4E4BE39: opj_j2k_read_tile_header (j2k.c:8617)
49 n1: 1610689344 0x4E4C902: opj_j2k_decode_tiles (j2k.c:10348)
50 n1: 1610689344 0x4E4E3CE: opj_j2k_decode (j2k.c:7846)
51 n1: 1610689344 0x4E53002: opj_jp2_decode (jp2.c:1564)
52 n0: 1610689344 0x40374E: main (opj_decompress.c:1459)
53 n1: 219232541 0x4E4BC50: opj_j2k_read_tile_header (j2k.c:4683)
54 n1: 219232541 0x4E4C902: opj_j2k_decode_tiles (j2k.c:10348)
55 n1: 219232541 0x4E4E3CE: opj_j2k_decode (j2k.c:7846)
56 n1: 219232541 0x4E53002: opj_jp2_decode (jp2.c:1564)
57 n0: 219232541 0x40374E: main (opj_decompress.c:1459)
58 n1: 23893200 0x4E72735: opj_tcd_init_decode_tile (tcd.c:1225)
59 n1: 23893200 0x4E4BE39: opj_j2k_read_tile_header (j2k.c:8617)
60 n1: 23893200 0x4E4C902: opj_j2k_decode_tiles (j2k.c:10348)
61 n1: 23893200 0x4E4E3CE: opj_j2k_decode (j2k.c:7846)
62 n1: 23893200 0x4E53002: opj_jp2_decode (jp2.c:1564)
63 n0: 23893200 0x40374E: main (opj_decompress.c:1459)
64 n0: 17497464 in 52 places, all below massif's threshold (1.00%)
66 commit ca34d13e76a588a00171e57690c1deeaf068723a
67 Author: Even Rouault <even.rouault@spatialys.com>
68 Date: 2017-07-06 16:11:11 +0200
70 Decoding: do not allocate memory for the codestream of each codeblock
72 Currently we allocate at least 8192 bytes for each codeblock, and copy
73 the relevant parts of the codestream in that per-codeblock buffer as we
75 As the whole codestream for the tile is ingested in memory and alive
76 during the decoding, we can directly point to it instead of copying. But
77 to do that, we need an intermediate concept, a 'chunk' of code-stream segment,
78 given that segments may be made of data at different places in the code-stream
79 when quality layers are used.
81 With that change, the decoding of MAPA_005.jp2 goes down from the previous
82 improvement of 2.7 GB down to 1.9 GB.
86 n4: 1885648469 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
87 n1: 1610689344 0x4E78287: opj_aligned_malloc (opj_malloc.c:61)
88 n1: 1610689344 0x4E71D7B: opj_alloc_tile_component_data (tcd.c:676)
89 n1: 1610689344 0x4E7272C: opj_tcd_init_decode_tile (tcd.c:816)
90 n1: 1610689344 0x4E4BDD9: opj_j2k_read_tile_header (j2k.c:8618)
91 n1: 1610689344 0x4E4C8A2: opj_j2k_decode_tiles (j2k.c:10349)
92 n1: 1610689344 0x4E4E36E: opj_j2k_decode (j2k.c:7847)
93 n1: 1610689344 0x4E52FA2: opj_jp2_decode (jp2.c:1564)
94 n0: 1610689344 0x40374E: main (opj_decompress.c:1459)
95 n1: 219232541 0x4E4BBF0: opj_j2k_read_tile_header (j2k.c:4685)
96 n1: 219232541 0x4E4C8A2: opj_j2k_decode_tiles (j2k.c:10349)
97 n1: 219232541 0x4E4E36E: opj_j2k_decode (j2k.c:7847)
98 n1: 219232541 0x4E52FA2: opj_jp2_decode (jp2.c:1564)
99 n0: 219232541 0x40374E: main (opj_decompress.c:1459)
100 n1: 39822000 0x4E727A9: opj_tcd_init_decode_tile (tcd.c:1219)
101 n1: 39822000 0x4E4BDD9: opj_j2k_read_tile_header (j2k.c:8618)
102 n1: 39822000 0x4E4C8A2: opj_j2k_decode_tiles (j2k.c:10349)
103 n1: 39822000 0x4E4E36E: opj_j2k_decode (j2k.c:7847)
104 n1: 39822000 0x4E52FA2: opj_jp2_decode (jp2.c:1564)
105 n0: 39822000 0x40374E: main (opj_decompress.c:1459)
106 n0: 15904584 in 52 places, all below massif's threshold (1.00%)
108 commit 373520db309430b68dd9ff09cba03a25f711a88e
109 Author: Even Rouault <even.rouault@spatialys.com>
110 Date: 2017-07-06 13:23:29 +0200
112 Add documentation for magic values in the code
114 commit 434ace4ff74cc3eee401d4d3c02668c1d85f2a0d
115 Author: Even Rouault <even.rouault@spatialys.com>
116 Date: 2017-07-06 02:17:26 +0200
118 opj_jp2_apply_pclr() also needs to use opj_image_data_alloc/opj_image_data_free
120 commit 0c1fc0593ef5b918068709fd74d76e4824c90e7c
121 Author: Even Rouault <even.rouault@spatialys.com>
122 Date: 2017-07-06 02:02:25 +0200
124 Complementary fix to previous commit
126 commit f58aab9d6a57e48bdc60e15dd373c24de74719a9
127 Author: Even Rouault <even.rouault@spatialys.com>
128 Date: 2017-07-06 01:47:40 +0200
130 Add opj_image_data_alloc() / opj_image_data_free()
132 As bin/common/color.c used to directly call malloc()/free(), we need
133 to export functions dedicated to allocating/freeing image component data.
135 commit 61fb5dd7f81c2e3dfabbb99f59dc89572d59fa37
136 Author: Even Rouault <even.rouault@spatialys.com>
137 Date: 2017-07-06 01:05:24 +0200
139 Fix crash on Windows due to b7594c0fcb9dd3aa6356d72c4a525d76168da689
141 b7594c0fcb9dd3aa6356d72c4a525d76168da689 may put opj_tcd_tilecomp_t->data
142 allocated by opj_alloc_tile_component_data() as the image->comps[].data. As
143 opj_alloc_tile_component_data() use opj_aligned_malloc() we must be sure to
144 ue opj_alined_malloc()/_free() in all places where we alloc/free
145 image->comps[].data.
147 Note: this might have some compatibility impact in case user code does itself
148 the allocation/free of image->comps[].data
150 commit 793edc38e41700e9b4cda4b7f9c79aba95b8d989
151 Author: Even Rouault <even.rouault@spatialys.com>
152 Date: 2017-07-05 23:48:28 +0200
154 Decrease memory consumption for whole image single tile decoding.
156 We can use the same buffer for the tile decoding and the final image, and
157 save the intermediate buffer to transfer between those.
159 Effect on the decoding of MAPA (9944 x 13498 x 3 components of size byte)
161 Peak memory from 4.5 GB to 2.7 GB
164 n5: 2699708767 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
165 n1: 1610689344 0x4E77E07: opj_aligned_malloc (opj_malloc.c:61) <-- final image
166 n1: 1610689344 0x4E7195B: opj_alloc_tile_component_data (tcd.c:676)
167 n1: 1610689344 0x4E722D2: opj_tcd_init_decode_tile (tcd.c:816)
168 n1: 1610689344 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
169 n1: 1610689344 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
170 n1: 1610689344 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
171 n1: 1610689344 0x4E52E42: opj_jp2_decode (jp2.c:1564)
172 n0: 1610689344 0x40369E: main (opj_decompress.c:1459)
173 n1: 815554560 0x4E72231: opj_tcd_init_decode_tile (tcd.c:1217) <-- working memory for code blocks: 9944*13498/64/64*8192*3
174 n1: 815554560 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
175 n1: 815554560 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
176 n1: 815554560 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
177 n1: 815554560 0x4E52E42: opj_jp2_decode (jp2.c:1564)
178 n0: 815554560 0x40369E: main (opj_decompress.c:1459)
179 n1: 219758391 0x4E4C0BF: opj_j2k_read_tile_header (j2k.c:4661) <-- ingestion of code stream
180 n1: 219758391 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
181 n1: 219758391 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
182 n1: 219758391 0x4E52E42: opj_jp2_decode (jp2.c:1564)
183 n0: 219758391 0x40369E: main (opj_decompress.c:1459)
184 n1: 39822000 0x4E7224F: opj_tcd_init_decode_tile (tcd.c:1224) <-- OPJ_J2K_DEFAULT_NB_SEGS*sizeof(opj_tcd_seg_t) per codeblock
185 n1: 39822000 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
186 n1: 39822000 0x4E4C742: opj_j2k_decode_tiles (j2k.c:10324)
187 n1: 39822000 0x4E4E20E: opj_j2k_decode (j2k.c:7826)
188 n1: 39822000 0x4E52E42: opj_jp2_decode (jp2.c:1564)
189 n0: 39822000 0x40369E: main (opj_decompress.c:1459)
190 n0: 13884472 in 49 places, all below massif's threshold (1.00%)
193 n5: 4493329848 (heap allocation functions) malloc/new/new[], --alloc-fns, etc.
194 n2: 1610709160 0x4E77C87: opj_aligned_malloc (opj_malloc.c:61)
195 n1: 1610689344 0x4E717DB: opj_alloc_tile_component_data (tcd.c:676)
196 n1: 1610689344 0x4E72152: opj_tcd_init_decode_tile (tcd.c:816)
197 n1: 1610689344 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
198 n1: 1610689344 0x4E4C64A: opj_j2k_decode_tiles (j2k.c:10318)
199 n1: 1610689344 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
200 n1: 1610689344 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
201 n0: 1610689344 0x40369E: main (opj_decompress.c:1459)
202 n0: 19816 in 2 places, all below massif's threshold (1.00%)
203 n1: 1610689344 0x4E43F36: opj_j2k_update_image_data.isra.7 (j2k.c:8743)
204 n1: 1610689344 0x4E4C5C1: opj_j2k_decode_tiles (j2k.c:10358)
205 n1: 1610689344 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
206 n1: 1610689344 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
207 n0: 1610689344 0x40369E: main (opj_decompress.c:1459)
208 n1: 815554560 0x4E720B1: opj_tcd_init_decode_tile (tcd.c:1217)
209 n1: 815554560 0x4E4BCF1: opj_j2k_read_tile_header (j2k.c:8597)
210 n1: 815554560 0x4E4C64A: opj_j2k_decode_tiles (j2k.c:10318)
211 n1: 815554560 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
212 n1: 815554560 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
213 n0: 815554560 0x40369E: main (opj_decompress.c:1459)
214 n1: 402672336 0x4E4C545: opj_j2k_decode_tiles (j2k.c:10336)
215 n1: 402672336 0x4E4E08E: opj_j2k_decode (j2k.c:7826)
216 n1: 402672336 0x4E52CC2: opj_jp2_decode (jp2.c:1564)
217 n0: 402672336 0x40369E: main (opj_decompress.c:1459)
218 n0: 53704448 in 58 places, all below massif's threshold (1.00%)
220 commit 2fbd4bb0b9c6178f12c852dc40db6ab05734bfe2
221 Author: Even Rouault <even.rouault@spatialys.com>
222 Date: 2017-08-04 18:01:29 +0200
224 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
226 commit 155fc2e279b85bd04709967b2797de4f69b0cf3e
227 Author: Antonin Descampe <antonin@gmail.com>
228 Date: 2017-08-02 17:07:29 +0200
230 Update abi-check to take into account new defaults for "add" git command
232 commit eb90d8ec935eba934bfd260cc80c8ef445dff4fd
233 Author: Antonin Descampe <antonin@gmail.com>
234 Date: 2017-08-02 16:50:11 +0200
236 WIP: fix abi-check and automatic upload
238 commit 48125b0d124bc668b971b1f5df5a3c39798cfcf9
239 Author: Even Rouault <even.rouault@spatialys.com>
240 Date: 2017-07-31 17:35:10 +0200
242 src/bin/jpwl/convert.c: add missing fclose() in error code path (suggested by maddin200, #976)
244 commit 13cde9fa37249628af6b6f10601b733f87a025f4
245 Author: Even Rouault <even.rouault@spatialys.com>
246 Date: 2017-07-30 19:46:52 +0200
248 src/lib/openjp2/*.h: use OPJ_ prefix for inclusion guards instead of reserved __ (#587)
250 commit 9a6d41d22b1a4f17a376d2f6f208c52c58b8e4b3
251 Author: Even Rouault <even.rouault@spatialys.com>
252 Date: 2017-07-30 19:27:01 +0200
254 opj_event_msg(): force zero termination of buffer
256 commit b716f8616394252724ca0811eab3a20ab42b2189
257 Author: Even Rouault <even.rouault@spatialys.com>
258 Date: 2017-07-30 19:26:47 +0200
260 Fix breakage of 22bf99ce0220811bfce1562ee61423cb0245b683
262 commit 22bf99ce0220811bfce1562ee61423cb0245b683
263 Author: Even Rouault <even.rouault@spatialys.com>
264 Date: 2017-07-30 19:07:16 +0200
266 Test return value of opj_j2k_setup_decoding_tile() (commit https://github.com/uclouvain/openjpeg/pull/561/commits/ec31fa0c7f1ff8979312c07296cba41584c458a0 by ak-dxdy, #561)
268 commit ffa9a4f6585dc199fb850dee4255e7a7b84aad63
269 Author: Even Rouault <even.rouault@spatialys.com>
270 Date: 2017-07-30 18:46:34 +0200
272 Fix warnings in USE_JPIP compilation mode
274 commit c22cbd8bdf8ff2ae372f94391a4be2d322b36b41
275 Author: Even Rouault <even.rouault@spatialys.com>
276 Date: 2017-07-30 18:43:25 +0200
278 Avoid heap buffer overflow in function pnmtoimage of convert.c, and unsigned integer overflow in opj_image_create() (CVE-2016-9118, #861)
280 commit 83342f2aafcab4599b49f780e35fd249e8402b61
281 Author: Even Rouault <even.rouault@spatialys.com>
282 Date: 2017-07-30 18:18:59 +0200
284 Fix Doxygen warnings (patch derived from Winfried's doxygen-dif.txt.zip, #849)
286 commit 4748318136626dd9e841ea1aa8b52adfbab26772
287 Author: Even Rouault <even.rouault@spatialys.com>
288 Date: 2017-07-30 17:26:03 +0200
290 j2k.c: remove hardcoded constants related to m_state, and useless FIXME
292 commit e23e0c94d0eb30623bc67be19c38c22ee5378344
293 Author: Even Rouault <even.rouault@spatialys.com>
294 Date: 2017-07-30 16:48:15 +0200
296 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
298 commit 1ed8d67797ef57143e2c855b602016bf9d89337d
299 Author: Even Rouault <even.rouault@spatialys.com>
300 Date: 2017-07-30 15:35:47 +0200
302 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
304 commit 68832af20e3b3710424947e12762b6b52d3b6ac0
305 Author: Even Rouault <even.rouault@spatialys.com>
306 Date: 2017-07-30 15:22:24 +0200
308 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
310 commit 517bf6fd86dae18b62390a03533d30da0e5bb701
311 Author: Even Rouault <even.rouault@spatialys.com>
312 Date: 2017-07-29 21:11:23 +0200
314 src/bin/jpwl/convert.c: fix memleak (fix suggested by maddin200, #631)
316 commit 51eb86d8f7a6297a4f0e8ca44977b72532de0353
317 Author: Even Rouault <even.rouault@spatialys.com>
318 Date: 2017-07-29 19:43:23 +0200
320 Fix warnings in pi.c raised by VS11 analyze (#190)
322 commit 397f62c0a838e15d667ef50e27d5d011d2c79c04
323 Author: Even Rouault <even.rouault@spatialys.com>
324 Date: 2017-07-29 19:13:49 +0200
326 Fix write heap buffer overflow in opj_mqc_byteout(). Discovered by Ke Liu of Tencent's Xuanwu LAB (#835)
328 commit 11445eddad7e7fa5b273d1c83c91011c44e5d586
329 Author: Even Rouault <even.rouault@spatialys.com>
330 Date: 2017-07-29 19:03:13 +0200
332 opj_pi_update_decode_poc(): limit layno1 to the number of layers (CVE-2016-1626 and CVE-2016-1628, #850)
334 This has been recently fixed in a less elegant way per
335 80818c39f5bfbac37768fcee95b0ffeceaa77264
337 commit 3fbe71369019df0b47c7a2be4fab8c05768f2f32
338 Author: Even Rouault <even.rouault@spatialys.com>
339 Date: 2017-07-29 18:38:16 +0200
341 opj_tcd_get_decoded_tile_size(): fix potential UINT32 overflow (#854, CVE-2016-5152)
343 Fix derived from https://pdfium.googlesource.com/pdfium.git/+/d8cc503575463ff3d81b22dad292665f2c88911e/third_party/libopenjpeg20/0018-tcd_get_decoded_tile_size.patch
345 commit 5a3e7aaf339943bc988adbada39a1fc8f5046899
346 Author: Even Rouault <even.rouault@spatialys.com>
347 Date: 2017-07-29 17:56:12 +0200
349 color_cielab_to_rgb(): reject images with components of different dimensions to void read heap buffer overflow (#909)
351 commit 784d4d47e97b5d0fccccbd931349997a0e2074cc
352 Author: Even Rouault <even.rouault@spatialys.com>
353 Date: 2017-07-29 17:51:10 +0200
355 Fix breakage of 2fa0fc61f2d546c8b67e7c5a9cbc61d98e1f7af0 (#970)
357 commit 2fa0fc61f2d546c8b67e7c5a9cbc61d98e1f7af0
358 Author: Even Rouault <even.rouault@spatialys.com>
359 Date: 2017-07-29 17:28:55 +0200
361 imagetopnm(): make sure the alpha component has same dimension as other components to avoid read heap buffer overflow (#970)
363 commit db9ef99f6dd054a84fa8382c02869fb0656abfc8
364 Author: Even Rouault <even.rouault@spatialys.com>
365 Date: 2017-07-29 16:34:35 +0200
367 opj_t1_decode_cblk(): avoid undefined shift behaviour. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2487. Credit to OSS Fuzz
369 commit f6551f822fe020843299bd807ec6989abd070b2c
370 Author: Even Rouault <even.rouault@spatialys.com>
371 Date: 2017-07-29 16:29:11 +0200
373 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
375 commit 9906fbf737692486cebabe98169988d818e2e66a
376 Author: Even Rouault <even.rouault@spatialys.com>
377 Date: 2017-07-29 16:22:36 +0200
379 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
381 commit 71b4f5b124d14ed609763b11e19d2d480bc32f58
382 Author: Even Rouault <even.rouault@spatialys.com>
383 Date: 2017-07-29 15:52:11 +0200
385 opj_pi_next_pcrl(): avoid undefined shift behaviour. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2787. Credit to OSS Fuzz
387 commit d6654d906c1ae66590b6d600458a91f1ee923de5
388 Author: Even Rouault <even.rouault@spatialys.com>
389 Date: 2017-07-28 22:15:47 +0200
391 opj_int_ceildiv(): fix int32 overflow. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2494. Credit to OSS Fuzz
393 commit 361c4506fdfb9b6f0e41d86d5d0ea1efb5704ecf
394 Author: Even Rouault <even.rouault@spatialys.com>
395 Date: 2017-07-28 22:06:26 +0200
397 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
399 commit 7bdbe490cba9990916f94a40379cc787434340ff
400 Author: Even Rouault <even.rouault@spatialys.com>
401 Date: 2017-07-28 21:55:22 +0200
403 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
405 commit 16aeb9282f6b3877aa8365c461ba8d3d1338adae
406 Author: Even Rouault <even.rouault@spatialys.com>
407 Date: 2017-07-28 21:39:30 +0200
409 Fix null pointer dereference in opj_j2k_add_mct() (#895)
411 Fixes openjeg-crashes-2017-07-27/issue879-poc1.j2k of #895
413 commit c5bf5ef4d6552e9159aaad29cb27826acd1a3389
414 Author: Even Rouault <even.rouault@spatialys.com>
415 Date: 2017-07-28 21:29:55 +0200
417 Avoid use-after-free when a MCT marker is found after a MCC one (#895)
419 Fixes openjeg-crashes-2017-07-27/issue880-poc2.j2k of #895
421 commit e03e9474667e5117341351699f0b1dbb06f93346
422 Author: Even Rouault <even.rouault@spatialys.com>
423 Date: 2017-07-27 22:29:17 +0200
425 Avoid undefined shift behaviour if bit depth == 32 (#895)
427 Fixes openjeg-crashes-2017-07-27/id:000000,sig:11,src:003798,op:ext_AO,pos:128.jp2
429 commit 820fcfe8bb101a2862c076b02c9b6b636ce39d2f
430 Author: Even Rouault <even.rouault@spatialys.com>
431 Date: 2017-07-27 19:34:54 +0200
433 opj_j2k_update_image_data / opj_tcd_update_tile_data: fix unaligned load/store (#895)
435 When components don't have the same width, unaligned load/store are possible.
437 Fixes openjeg-crashes-2017-07-27/id:000000,sig:11,src:001342,op:flip4,pos:162.jp2 of #895
439 commit 6c4e5bacb9d9791fc6ff074bd7958b3820d70514
440 Author: Even Rouault <even.rouault@spatialys.com>
441 Date: 2017-07-27 19:22:14 +0200
443 opj_pi_next_rpcl / opj_pi_next_pcrl / opj_pi_next_cprl: avoid int overflow (#895)
445 Fixes int overflow on openjeg-crashes-2017-07-27/id:000000,sig:08,src:000879,op:flip2,pos:128.jp2
447 commit 178194c093422c9564efc41f9ecb5c630b43f723
448 Author: Even Rouault <even.rouault@spatialys.com>
449 Date: 2017-07-27 18:51:51 +0200
451 opj_jp2_check_color(): replace assertion regarding mtyp by runtime check (#672, #895)
453 Fixes test case openjeg-crashes-2017-07-27/id:000000,sig:06,src:000001,op:flip1,pos:808.jp2
456 commit d6fa30099797c68c6a67decf58571dd59dbf734b
457 Author: Even Rouault <even.rouault@spatialys.com>
458 Date: 2017-07-26 23:25:38 +0200
460 Avoids undefined shift behaviour in m_dc_level_shift computation
462 Fixes warning found on clusterfuzz-testcase-minimized-5146316340461568
463 https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2495
467 commit a88cbb6a0b3539461dfb29922102953b7a7fc3a7
468 Author: Even Rouault <even.rouault@spatialys.com>
469 Date: 2017-07-26 22:53:59 +0200
471 Fix various undefined shift behaviour in pi.c
473 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2496
476 commit 6c5fe9407b7768eb2ac55b83511bc103551d207a
477 Author: Even Rouault <even.rouault@spatialys.com>
478 Date: 2017-07-26 22:22:44 +0200
480 Avoid potential undefined shift behaviour in opj_bio_read() from opj_t2_read_packet_header()
482 Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2485
485 commit dbf527bf2a53bc88e6cf1373991002ec0e8e22a1
486 Merge: 5e795d9 94c4b73
487 Author: Even Rouault <even.rouault@mines-paris.org>
488 Date: 2017-07-26 22:05:32 +0200
490 Merge pull request #800 from rouault/tier1_optimizations_multithreading_pterm_check
492 Implement predictive termination check
494 commit 94c4b7300cc515330bf798bb45eb0d68e2c84aa0
495 Author: Even Rouault <even.rouault@spatialys.com>
496 Date: 2017-07-26 21:39:50 +0200
498 T1 decoder: check code stream errors when predictable termination is enabled and emit a warning when errors are found
500 commit 5e795d90a1e47616e0c7a2e39381c13ccf7fd6dd
501 Author: Even Rouault <even.rouault@spatialys.com>
502 Date: 2017-07-26 21:06:38 +0200
504 Spelling fixes (patch by ka7, #890, rebased on top of master)
506 commit 2be20ce7d9996e960d79f3ad6ec439a9895849ed
507 Author: Even Rouault <even.rouault@spatialys.com>
508 Date: 2017-07-26 21:04:01 +0200
510 Reformat src/bin/wx/OPJViewer/source/OPJThreads.cpp src/bin/wx/OPJViewer/source/imagjpeg2000.cpp wrapping/java/openjp2/JavaOpenJPEG.c
512 commit 94cc97c58acfa574e734fac5eb673c516c0ac469
513 Author: Even Rouault <even.rouault@spatialys.com>
514 Date: 2017-07-26 20:13:09 +0200
516 opj_decompress: fix null pointer dereference on comps[].data on id_000167,sig_11,src_006079,op_havoc,rep_4 (#939)
518 commit 8d2e69e37d01bf6a0440d3109d92235c3c586ffe
519 Author: Even Rouault <even.rouault@spatialys.com>
520 Date: 2017-07-26 19:49:38 +0200
522 Fix assertion / memory leak in opj_j2k_merge_ppt() on corrupted images (#939)
524 Fixes issue on id:000020,sig:06,src:001958,op:flip4,pos:149 that has two
525 SOT markers for the same tile with the same tile part number, causing
526 opj_j2k_merge_ppt() to be called several times.
528 commit 5c5319984b81e2aa32d1d83abdef0cdb8dbe7b18
529 Author: Even Rouault <even.rouault@spatialys.com>
530 Date: 2017-07-26 18:05:56 +0200
532 Avoid division by zero in opj_pi_next_rpcl, opj_pi_next_pcrl, opj_pi_next_cprl (#938)
534 Fixes crash on id_000004,sig_06,src_000679,op_arith8,pos_49,val_-17
536 commit 80818c39f5bfbac37768fcee95b0ffeceaa77264
537 Author: Even Rouault <even.rouault@spatialys.com>
538 Date: 2017-07-26 12:24:26 +0200
540 Avoid index out of bounds access to pi->include[] (#938)
542 Fix id:000098,sig:11,src:005411,op:havoc,rep:2 test case
544 commit d27ccf01c68a31ad62b33d2dc1ba2bb1eeaafe7b
545 Author: Even Rouault <even.rouault@spatialys.com>
546 Date: 2017-07-26 11:30:56 +0200
548 Avoid division by zero in opj_pi_next_rpcl, opj_pi_next_pcrl and opj_pi_next_cprl (#938)
550 Fixes issues with id:000026,sig:08,src:002419,op:int32,pos:60,val:+32 and
551 id:000019,sig:08,src:001098,op:flip1,pos:49
553 commit 39e962a0ca5e53722f6badda8e93681aad412cf1
554 Merge: 60f8ddf 90ced71
555 Author: Even Rouault <even.rouault@mines-paris.org>
556 Date: 2017-07-13 13:33:21 +0200
558 Merge pull request #969 from jeroen/staticlibs
560 install static libraries
562 commit 90ced71601f05e87b4fa922261554eeeb11118b9
563 Author: Jeroen <jeroenooms@gmail.com>
564 Date: 2017-07-13 11:34:15 +0200
566 install static libraries
568 commit 60f8ddf577b20ccbb3dc0559b624115b9ba522ba
569 Author: Even Rouault <even.rouault@spatialys.com>
570 Date: 2017-07-06 12:11:37 +0200