Sebastian Rasmussen
e0993d072a
opj_j2k_is_imf_compliant: Fix out of bounds access.
...
Previously when mainlevel was parsed == 12 openjpeg would generate
a warning, but then the sublevel value would be compared to an out
of bounds element in the tabMaxSubLevelFromMainLevel array. From
this commit OpenJPEG will only use mainlevel if in range.
2021-07-12 15:32:39 +02:00
Sebastian Rasmussen
c8ab3e5849
opj_j2k_is_imf_compliant: Fix argument formatting for warnings.
2021-07-12 03:43:30 +02:00
Even Rouault
a36ae03860
Add support for enabling generation of TLM markers in encoder
...
Support was already there, but restricted to Cinema and IMF profiles,
and 255 tiles
* Add -TLM switch added to opj_compress
* Make opj_encoder_set_extra_options() function accept a TLM=YES option.
2021-06-07 15:49:08 +02:00
Even Rouault
f0629cb1c4
Fix various compiler warnings
2021-06-07 13:28:26 +02:00
Even Rouault
7e4e09a7fb
openjpeg.c: avoid casts of function pointers
2021-06-07 12:57:30 +02:00
Jamaika1
8aaafe6995
Import files tiff and yuv(raw) ( #1316 )
2021-05-06 19:30:34 +02:00
Even Rouault
85a87cd505
Remove obsolete components JPWL, JP3D and MJ2
2021-05-04 19:21:45 +02:00
Jamaika1
0c2b633992
Change defined WIN32
2020-12-21 07:59:12 +01:00
Even Rouault
8f5aff1dff
pi.c: avoid out of bounds access with POC ( fixes #1302 )
2020-12-04 20:45:25 +01:00
yuan
4ce7d285a5
Encoder: grow again buffer size in opj_tcd_code_block_enc_allocate_data() ( fixes #1283 )
2020-12-04 19:00:22 +08:00
Even Rouault
aaff099b49
Merge pull request #1301 from rouault/fix_1299
...
opj_j2k_write_sod(): avoid potential heap buffer overflow (fixes #1299 ) (probably master only)
2020-12-02 23:56:57 +01:00
Even Rouault
fb9eae5d63
Merge pull request #1300 from rouault/complement_1293
...
pi.c: avoid out of bounds access with POC (refs https://github.com/uclouvain/openjpeg/issues/1293#issuecomment-737122836 )
2020-12-02 23:56:39 +01:00
Even Rouault
73fdf28342
opj_j2k_write_sod(): avoid potential heap buffer overflow ( fixes #1299 ) (probably master only)
2020-12-02 14:10:16 +01:00
Even Rouault
00383e162a
pi.c: avoid out of bounds access with POC (refs https://github.com/uclouvain/openjpeg/issues/1293#issuecomment-737122836 )
2020-12-02 14:03:11 +01:00
Even Rouault
38d661a389
opj_t2_encode_packet(): avoid out of bound access of #1297 , but likely not the proper fix
2020-12-02 13:13:26 +01:00
Even Rouault
18b1138fbe
Merge pull request #1295 from rouault/fix_1293
...
opj_j2k_setup_encoder(): validate POC compno0 and compno1 (fixes #1293 )
2020-12-02 10:05:39 +01:00
Even Rouault
630b485f86
Merge pull request #1296 from rouault/workaround_1294
...
opj_t2_encode_packet(): avoid out of bound access of #1294 , but likely not the proper fix
2020-12-02 10:05:31 +01:00
Even Rouault
c9380ed0f8
opj_j2k_setup_encoder(): validate POC compno0 ( fixes #1293 )
2020-12-01 19:56:44 +01:00
Even Rouault
fbd30b064f
opj_t2_encode_packet(): avoid out of bound access of #1294 , but likely not the proper fix
2020-12-01 19:51:35 +01:00
Even Rouault
6daf5f3e1e
Encoder: avoid global buffer overflow on irreversible conversion when too many decomposition levels are specified ( fixes #1286 )
2020-11-30 23:29:06 +01:00
Even Rouault
2d119d03a0
Merge pull request #1291 from rouault/tnsot_zero_missing_eoc
...
Decoding: deal with some SPOT6 images that have tiles with a single tile-part with TPsot == 0 and TNsot == 0, and with missing EOC
2020-11-30 23:28:31 +01:00
Even Rouault
b2072402b7
pngtoimage(): fix wrong computation of x1,y1 if -d option is used, that would result in a heap buffer overflow ( fixes #1284 )
2020-11-30 22:31:51 +01:00
Even Rouault
1aa3c60859
Decoding: deal with some SPOT6 images that have tiles with a single tile-part with TPsot == 0 and TNsot == 0, and with missing EOC
2020-11-30 17:53:04 +01:00
yuan
4f487798ba
Free p_tcd_marker_info to avoid memory leak
2020-11-26 00:22:49 +08:00
yuan
649298dcf8
Encoder: grow again buffer size in opj_tcd_code_block_enc_allocate_data() ( fixes #1283 )
2020-11-25 20:41:39 +08:00
Even Rouault
15cf3d9581
Encoder: grow again buffer size in opj_tcd_code_block_enc_allocate_data() ( fixes #1283 )
2020-11-23 18:14:02 +01:00
Even Rouault
eaa098b59b
Encoder: grow buffer size in opj_tcd_code_block_enc_allocate_data() to avoid write heap buffer overflow in opj_mqc_flush ( fixes #1283 )
2020-11-23 13:49:05 +01:00
Even Rouault
67ec360f48
Fix typo in internal function name
2020-11-23 13:38:27 +01:00
Even Rouault
491299eb07
Merge pull request #1253 from rouault/floating_point_irreversible_encoding
...
Single-threaded performance improvements in forward DWT for 5-3 and 9-7 (and other improvements)
2020-10-09 13:25:27 +02:00
Pei JIA
65c8f577d2
Bump Java compatibility from 1.5 to 1.6 ( #1263 )
2020-09-23 11:34:31 +02:00
Even Rouault
0863ccf291
Encoder: avoid uint32 overflow when allocating memory for codestream buffer ( fixes #1243 )
2020-09-16 11:27:53 +02:00
Even Rouault
e8e258ab04
opj_decompress: fix double-free on input directory with mix of valid and invalid images (CVE-2020-15389)
...
Fixes #1261
Credits to @Ruia-ruia for reporting and analysis.
2020-06-30 21:31:19 +02:00
Even Rouault
172c8ae5cf
Merge pull request #1260 from sebras/fix-issue-1259
...
openjp2: Plug image leak when failing to allocate codestream index.
2020-06-22 22:35:44 +02:00
Sebastian Rasmussen
b028e8d1ce
openjp2: Plug image leak when failing to allocate codestream index.
...
This fixes issue #1259 .
2020-06-23 03:42:25 +08:00
Sebastian Rasmussen
79b199a8fe
openjp2: Plug memory leak when setting data as TLS fails.
...
Previously the Tier 1 handle was not freed when setting it as
TLS failed.
This fixes issue #1257 .
2020-06-23 03:21:31 +08:00
Sebastian Rasmussen
93b9f7236c
openjp2: Error out if failing to create Tier 1 handle.
...
Previously when the handle failed to be created (e.g. when
opj_calloc returned NULL due to low memory), the code still
assumed that the t1 handle pointer was valid and dereferenced
NULL, causing a crash. After this commit OpenJPEG will instead
error out under this condition.
This fixes issue #1255 .
2020-06-23 02:32:31 +08:00
szukw000
25fb144c42
Testing for invalid values of width, height, numcomps ( #1254 )
2020-06-10 17:40:50 +02:00
Even Rouault
1c5627ee74
T1 encoder: speed-up by aggressive inlining and more cache friendly data organization
...
~ 9% speed improvement seen on 10980x10980 uint16 image, T36JTT_20160914T074612_B02.tif
opj_compress time from 17.2s to 15.8s
2020-05-24 15:38:48 +02:00
Even Rouault
1e931fdb36
Forward DWT 9-7: major speed up by vectorizing vertical pass
...
`bench_dwt -I -encode` times goes from 8.6s to 2.1s
2020-05-23 01:01:05 +02:00
Even Rouault
a38e970fa5
Forward DWT 5-3: major speed up by vectorizing vertical pass
...
`bench_dwt -encode` times goes from 7.9s to 1.7s
2020-05-23 01:01:05 +02:00
Even Rouault
e69fa09f60
Forward DWT: small code refactoring to allow future improvements for the vertical pass
2020-05-22 16:01:45 +02:00
Even Rouault
33d3d0de07
dwt.c: remove unused typedef
2020-05-22 15:06:29 +02:00
Even Rouault
97b384aecd
Forward DWT 5x3: performance improvements in horizontal pass, and modest in vertical pass
2020-05-22 15:03:40 +02:00
Even Rouault
bd5f5ee7de
Forward DWT: small code refactoring to allow future improvements for the horizontal pass
2020-05-22 15:02:33 +02:00
Even Rouault
45a35223b7
Speed-up 9x7 IDWD by ~30% with OPJ_NUM_THREADS=2
...
"bench_dwt -I" time goes from 2.2s to 1.5s
2020-05-21 17:21:55 +02:00
Even Rouault
272b3e0fb2
Remove useless + 5U margin in opj_dwt_decode_tile_97()
...
Nothing in code analysis nor test suite shows that this margin is
needed.
It dates back to commit dbeebe72b9
where vector 9x7 decoding was introduced.
2020-05-21 15:42:51 +02:00
Even Rouault
47943daa15
Speed-up 9x7 IDWD by ~20%
...
"bench_dwt -I" time goes from 2.8s to 2.2s
2020-05-21 15:42:51 +02:00
Even Rouault
0c09062464
bench_dwt.c: add a -I switch to test irreversible FWDT/IDWT
2020-05-20 23:20:48 +02:00
Even Rouault
19ef7f26c4
Merge pull request #1211 from sebras/master
...
Add check to validate SGcod/SPcoc/SPcod parameter values.
2020-05-20 21:10:55 +02:00
Even Rouault
adccbc8336
Irreversible decoding: partially revert previous commit, to fix failures in test suite
2020-05-20 20:31:28 +02:00