Even Rouault
e9bbc6d3dd
Merge pull request #1001 from rouault/subtile_decoding_stage2
...
Subtile decoding: only apply IDWT on areas that participate to the window of interest
2017-08-21 13:02:07 +02:00
Even Rouault
17a7ac42d5
Add comments for filter_width values
2017-08-21 12:25:38 +02:00
Even Rouault
f87c5ef7eb
Subtile decoding: only do 9x7 IDWT computations on relevant areas of tile-component buffer.
2017-08-20 22:02:41 +02:00
Even Rouault
3eed024eb4
pgxtoimage(): avoid excessive memory allocation attempt ( #999 )
2017-08-19 15:45:54 +02:00
Even Rouault
5d40325056
Subtile decoding: only do 5x3 IDWT computations on relevant areas of tile-component buffer.
...
This lowers 'bin/opj_decompress -i ../MAPA.jp2 -o out.tif -d 0,0,256,256'
down to 0.860s
2017-08-18 15:08:51 +02:00
Even Rouault
e528531922
pgxtoimage(): fix write stack buffer overflow ( #997 )
2017-08-18 13:39:20 +02:00
Even Rouault
028c504a43
test_decode_area: fix to make it work with odd image dimensions
2017-08-18 12:30:11 +02:00
Even Rouault
5597522cac
bmp_read_rle8_data(): avoid potential infinite loop ( #996 )
2017-08-18 10:16:38 +02:00
Even Rouault
5d12806091
opj_j2k_update_rates(): grow tile size buffer for some situations
2017-08-17 19:18:48 +02:00
Even Rouault
4b0bfbfabc
Zero-initialize tile buffer regions of skipped code-blocks, so as to make Valgrind happy
2017-08-17 19:05:54 +02:00
Even Rouault
fe338a057c
Sub-tile decoding: only decode precincts and codeblocks that intersect the window specified in opj_set_decode_area()
2017-08-17 19:05:54 +02:00
Even Rouault
17ea17f487
Fix -Wconversion warning
2017-08-17 19:05:29 +02:00
Even Rouault
fd8448ed44
bench_dwt.c: fix signedness related warnings
2017-08-17 17:04:48 +02:00
Even Rouault
da046b73a8
convert.c: fix recently introduced -Wsign-conversion warnings
2017-08-17 17:02:40 +02:00
Even Rouault
9f7d79fd30
opj_getopt_long(): avoid infinite loop on invalid or missing value for an option ( #736 )
2017-08-17 14:52:10 +02:00
Even Rouault
1ab6e0e07a
opj_decompress_fuzzer.cpp: reject images with too big tiles. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2918 . Credit to OSS Fuzz
2017-08-17 12:01:16 +02:00
Even Rouault
2cd30c2b06
tgatoimage(): avoid excessive memory allocation attempt, and fixes unaligned load ( #995 )
2017-08-17 11:47:40 +02:00
Even Rouault
09e83407fa
Avoid asserting on assert(i == pcol) in opj_jp2_apply_pclr() by adding new check in opj_jp2_check_color(). Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3068 . Credit to OSS Fuzz
2017-08-17 11:05:53 +02:00
Even Rouault
8e6c371e66
opj_t1_encode_cblk(): avoid uint32 overflow when numbps = 0 (which is well defined behaviour, and is properly handled here, but better avoid it to detect real issues)
2017-08-16 18:29:59 +02:00
Even Rouault
1e387de742
Fix build issue of JPWL by adding opj_image_data_alloc() and opj_image_data_free() to src/lib/openmj2 ( #994 )
2017-08-16 17:39:20 +02:00
Even Rouault
c535531f03
opj_t2_encode_packet(): fix potential write heap buffer overflow ( #992 )
2017-08-16 17:20:29 +02:00
Even Rouault
dcac91b8c7
opj_j2k_write_sot(): fix potential write heap buffer overflow ( #991 )
2017-08-16 17:09:10 +02:00
Even Rouault
af76000771
tiftoimage(): fix read heap buffer overflow ( #988 )
...
The number of components is given only by TIFFTAG_SAMPLESPERPIXEL / tiSpp.
Querying TIFFTAG_EXTRASAMPLES only give information about which channel is
the alpha channel, but we mostly ignore it for now, so remove that part of the
code.
2017-08-16 13:36:52 +02:00
Even Rouault
ab4de904e7
imagetotga(): fix read heap buffer overflow if numcomps < 3 ( #987 )
2017-08-16 13:11:36 +02:00
Even Rouault
9624b2fa47
opj_t2_encode_packet(): only emit an error about insufficiently large output buffer in FINAL_PASS mode. Fixes (master-only) regression added in 0b4fef6d19
2017-08-16 12:52:33 +02:00
Even Rouault
4241ae6fbb
Fix assertion in debug mode / heap-based buffer overflow in opj_write_bytes_LE for Cinema profiles with numresolutions = 1 ( #985 )
2017-08-15 11:55:58 +02:00
Even Rouault
52d5690a6f
Merge pull request #984 from stweil/const
...
Use more const qualifiers
2017-08-14 17:28:26 +02:00
Even Rouault
baf0c1ad45
bmp_read_info_header(): reject bmp files with biBitCount == 0 ( #983 )
2017-08-14 17:26:58 +02:00
Even Rouault
afb308b9cc
Encoder: grow buffer size in opj_tcd_code_block_enc_allocate_data() to avoid write heap buffer overflow in opj_mqc_flush ( #982 )
2017-08-14 17:20:37 +02:00
Stefan Weil
bc59410f25
Use const qualifier for mqc_states
...
This allows more compiler optimizations.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2017-08-14 14:41:27 +02:00
Stefan Weil
10e6ce2c2c
Use const qualifier for j2k_prog_order_list
...
This allows more compiler optimizations.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2017-08-14 14:41:27 +02:00
Even Rouault
0b4c3ce75d
Merge pull request #980 from szukw000/changes-for-ppc64-converttif
...
Changes in converttif.c for PPC64
2017-08-11 15:13:35 +02:00
szukw000
9f750884f9
Changes in converttif.c for PPC64
2017-08-11 00:06:23 +02:00
Even Rouault
a35b489134
Fix argument order in error message of previous commit
2017-08-10 16:58:36 +02:00
Even Rouault
0b4fef6d19
Propagate event manager down to opj_t2_encode_packet() and use it to emit an error message when the output buffer is too small
2017-08-10 16:49:47 +02:00
Even Rouault
a316f36dfc
Fix crash on encoding if using opj_set_default_encoder_parameters() without defining tcp_numlayers
2017-08-10 14:43:16 +02:00
Even Rouault
a4c938181d
Reformat tests/test_tile_encoder.c
2017-08-10 12:30:31 +02:00
Even Rouault
26fe8f6043
Improve doc of opj_tccp_info_t::cblkw and cblkh
2017-08-10 11:45:49 +02:00
Antonin Descampe
07c2fe28b0
Comment back previous version in abi-check.sh
2017-08-09 21:51:16 -07:00
Antonin Descampe
c5987173c5
update abi-check for latest release
2017-08-09 21:35:30 -07:00
Antonin Descampe
3d7cde5fc9
Preparing Release v2.2.0
2017-08-09 17:31:50 -07:00
Antonin Descampe
bc21818c63
Preparing Release v2.2.0
2017-08-09 17:28:17 -07:00
Even Rouault
c03fbbee63
.travis.yml: add 'dist: precise' for config that requires it
2017-08-10 01:14:35 +02:00
Even Rouault
4b16e8d27a
Remove useless opj_tcd_t::enumcs field added per #975
2017-08-09 17:37:05 +02:00
Even Rouault
5e200452db
Doc: fix error in previous commit
2017-08-09 15:04:29 +02:00
Even Rouault
9203e8ec51
tcd.h: doc fixes and improvements
2017-08-09 14:50:59 +02:00
Even Rouault
11b1ffb373
Document qmfbid values
2017-08-09 14:13:58 +02:00
Even Rouault
ac375ac9f5
Partial revert BPC related check of #975 ( #979 )
...
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.
Note: we could also check that the content of JP2 BPCC box is consistant with the one
of the SIZ marker.
2017-08-09 11:34:08 +02:00
Even Rouault
c38bdbef4f
opj_decompress: document -quiet option, and remove spurious newline output
2017-08-09 10:03:59 +02:00
Even Rouault
0eceb4494c
src/bin/jpwl/convert.c pgxtoimage(): add missing fclose() ( #977 )
2017-08-09 09:50:39 +02:00