Stephan Mühlstrasser
6c83f1468c
Merge branch 'master' into bit-fields-type
2016-09-07 08:35:19 +02:00
Matthieu Darbois
734d57d5f7
fix incrementing of "l_tcp->m_nb_mcc_records" in opj_j2k_read_mcc ( #820 )
2016-09-06 22:33:26 +02:00
trylab
c16bc057ba
Fix an integer overflow issue ( #809 )
...
Prevent an integer overflow issue in function opj_pi_create_decode of
pi.c.
2016-09-06 07:55:49 +02:00
Matthieu Darbois
ea320dab8b
Add overflow check in opj_tcd_init_tile ( #819 )
2016-09-06 07:54:29 +02:00
Matthieu Darbois
d7e6b7de8a
Fix leak & invalid behavior of opj_jp2_read_ihdr ( #818 )
...
In case multiple ihdr box are present, only the first one shall be
taken into account.
2016-09-06 01:31:15 +02:00
Matthieu Darbois
ccd9ced49e
Add overflow check in opj_j2k_update_image_data ( #817 )
2016-09-06 00:50:44 +02:00
Matthieu Darbois
9f24b078c7
Change 'restrict' define to 'OPJ_RESTRICT' ( #816 )
...
Visual Studio 2015 does not pass regression tests with `__restrict` so kept disabled for MSVC.
Need to check proper usage of OPJ_RESTRICT (if correct then there’s
probably a bug in vc14)
Closes #661
2016-09-06 00:49:53 +02:00
Even Rouault
4f9abb9a45
[Win32] Use _beginthreadex instead of CreateThread()
2016-08-11 21:59:28 +02:00
Stephan Mühlstrasser
54874194a8
Unified bit-field declaration, removed tabs.
2016-07-27 10:09:54 +02:00
Stephan Mühlstrasser
d2d35bf6c2
Create separate type for bit-fields.
...
The definition of bit-fields with type OPJ_UINT32 caused complilation errors
on IBM iSeries, because OPJ_UINT32 is defined as uint32_t, and
uint32_t is defined as unsigned long in <stdint.h>. The definition of
bit-fields with an integer type of a specific size doesn't make sense
anyway.
2016-07-25 20:46:11 +02:00
Stefan Weil
e40c28c2e8
jpwl: Remove non-portable data type u_int16_t (fix issue #796 ) ( #797 )
...
The type casts which used this data type can be removed by changing
the signature of function swap16. As this function is called with
unsigned variables, this change is reasonable.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-07-14 10:49:17 +02:00
Stefan Weil
18da6155b2
Fix dependency for pkg-config (issue #594 ) ( #795 )
...
openjpeg provides libopenjp2.pc, so the require statements must refer to
libopenjp2 instead of openjp2.
Fixes #594
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-07-12 00:45:51 +02:00
maddin200
cb72c08472
Update tcd.c ( #790 )
...
cppcheck unitialized variable
2016-06-21 22:13:57 +02:00
Even Rouault
7d3c7a345f
Be robust to failed allocations of job structures
2016-05-26 23:51:32 +02:00
Even Rouault
69497d35c0
opj_decompress: use clock_gettime() instead of getrusage() so as to get the time spent, and not to the total CPU time
2016-05-25 21:59:43 +02:00
Even Rouault
d67cd2220a
opj_decompress: add a -threads <num_threads> option
2016-05-25 21:02:07 +02:00
Even Rouault
57b216bb58
Use thread pool for DWT decoding
2016-05-25 21:02:07 +02:00
Even Rouault
5fbb8b2645
Use thread-pool for T1 decoding
2016-05-25 21:02:07 +02:00
Even Rouault
d4b7f03cfa
Add opj_codec_set_threads() in public API and propagate resulting thread pool to tcd level
...
By default, only the main thread is used. If opj_codec_set_threads() is not used,
but the OPJ_NUM_THREADS environment variable is set, its value will be
used to initialize the number of threads. The value can be either an integer
number, or "ALL_CPUS". If OPJ_NUM_THREADS is set and this function is called,
this function will override the behaviour of the environment variable.
2016-05-25 21:02:07 +02:00
Even Rouault
54179fe1d5
Add threading and thread pool API
2016-05-25 21:02:07 +02:00
Even Rouault
7092f7ea11
Fix MSVC210 build issue (use of C99 declaration after statement) introduced in ba1edf6cd4
2016-05-23 16:00:28 +02:00
Even Rouault
107eb31531
Improve perf of opj_t1_dec_sigpass_mqc_vsc() and opj_t1_dec_refpass_mqc_vsc() with loop unrolling
2016-05-23 13:45:15 +02:00
Even Rouault
8371491a99
Better inlining of opj_t1_updateflagscolflags() w.r.t. flags_stride
2016-05-23 11:53:54 +02:00
Even Rouault
956c31d5a6
opj_t1_dec_clnpass(): remove useless test in the runlen decoding path (of the non VSC case)
2016-05-23 11:53:54 +02:00
Even Rouault
93f7f90711
opj_t1_decode_cblks(): tiny perf increase when loop unrolling
2016-05-23 11:53:53 +02:00
Even Rouault
1da397e94a
Tier 1 decoding: add a colflags array
...
Addition flag array such that colflags[1+0] is for state of col=0,row=0..3,
colflags[1+1] for col=1, row=0..3, colflags[1+flags_stride] for col=0,row=4..7, ...
This array avoids too much cache trashing when processing by 4 vertical samples
as done in the various decoding steps.
2016-05-23 11:53:53 +02:00
Even Rouault
31882ad7f4
Const'ify lut arrays so they are in the read-only data section
2016-05-22 00:54:06 +02:00
Even Rouault
ba1edf6cd4
Reduce number of occurrences of orient function argument
...
This is essentially used to shift inside the lut_ctxno_zc, which we
can precompute at the beginning of opj_t1_decode_cblk() /
opj_t1_encode_cblk()
2016-05-22 00:50:34 +02:00
Even Rouault
23a01dfdef
Specialize decoding passes for 64x64 code blocks
2016-05-21 16:27:35 +02:00
Even Rouault
d8fef96f23
Improve code generation in opj_t1_dec_clnpass()
...
Add a opj_t1_dec_clnpass_step_only_if_flag_not_sig_visit() method that
does the job of opj_t1_dec_clnpass_step_only() assuming the conditions
are met. And use it in opj_t1_dec_clnpass(). The compiler generates
more efficient code.
2016-05-21 15:52:02 +02:00
Even Rouault
c539808d09
opj_t1_updateflags(): tiny optimization
...
We can avoid using a loop-up table with some shift arithmetics.
2016-05-21 15:46:56 +02:00
Kal Conley
426bf8d337
Move some MQC functions into a header for speed
...
Allow these hot functions to be inlined. This boosts decode performance by ~10%.
2016-05-21 15:18:07 +02:00
Stefan Weil
4d2b6a671a
Update implementation of opj_calloc ( #705 )
2016-05-10 22:08:49 +02:00
Stefan Weil
aae066debc
Add missing source for the JPIP library and executables (issue #658 ) ( #659 )
...
They all need opj_malloc and other functions from opc_malloc.c.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-05-10 22:02:49 +02:00
mayeut
1a8318f6c2
Fix Out-of-Bounds Access in function opj_tgt_reset
...
Fix uclouvain/openjpeg#775
2016-05-08 20:10:13 +02:00
mayeut
162f6199c0
Fix Heap Buffer Overflow in function color_cmyk_to_rgb
...
Fix uclouvain/openjpeg#774
2016-05-08 19:18:05 +02:00
mayeut
8f9cc62b3f
Fix division by zero
...
Fix uclouvain/openjpeg#733
2016-05-08 18:40:12 +02:00
Julien Malik
17a0a8a195
Use lowercase for cmake commands consistenly
...
Inspired from https://github.com/InsightSoftwareConsortium/ITK/blob/master/Utilities/Maintenance/HowToCreateTheCMakeCaseConversion.txt
This needs vim 7.3 and fails with vim 7.4
This also fixes a number of :
- missing empty line at end of files
- useless space at end of lines
2016-05-02 16:05:41 +02:00
Julien Malik
e1e018a8dc
Fix UBSan gcc warning for first arg to memset non null
2016-05-02 12:13:24 +02:00
Antonin Descampe
72deb588cb
Merge pull request #706 from mayeut/issue135
...
Fix issue 135
The fix is legal regarding the standard but I did not manage to find out if it covers a bug in opj_t2_read_packet_data or if the file is corrupted
2016-04-30 13:51:01 +02:00
mayeut
cd77b6003b
Fix some coverity warnings
2016-04-30 12:15:22 +02:00
mayeut
f40a2ff2ad
Fix bad call to fclose with NULL pointer
2016-04-30 01:50:33 +02:00
Matthieu Darbois
be42e72d22
Fix warnings ( #763 )
2016-04-30 01:12:16 +02:00
Matthieu Darbois
15f081c896
Fix Out-Of-Bounds Read in sycc42x_to_rgb function ( #745 )
...
42x Images with an odd x0/y0 lead to subsampled component starting at the
2nd column/line.
That is offset = comp->dx * comp->x0 - image->x0 = 1
Fix #726
2016-04-30 00:33:27 +02:00
Matthieu Darbois
ad593c9e06
Fix heap-buffer-overflow in color_esycc_to_rgb ( #748 )
...
When all components do not have the same dx/dy, components buffer are
read beyond their end.
Do not convert in this case.
Update uclouvain/openjpeg#725
2016-04-29 23:51:14 +02:00
julienmalik
319fc971fe
cppcheck fix for openjp2 ( #740 )
2016-04-29 23:49:17 +02:00
Matthieu Darbois
e166e4a209
Check SSIZ is valid in opj_j2k_read_siz ( #762 )
2016-04-28 19:20:14 +02:00
Matthieu Darbois
29313eb5f1
Fix unsigned int overflow reported by UBSan ( #761 )
...
* Fix unsigned int overflow reported by UBSan
Please add -DOPJ_UBSAN_BUILD to CFLAGS when building with
-fsanitize=undefined,unsigned-integer-overflow
It seems clang/gcc do not allow to disable checking for block of code
other than function or file.
2016-04-28 13:16:43 +02:00
julienmalik
e982d03966
Fix implicit float-to-bool conversions ( #752 )
2016-04-28 11:52:45 +02:00
Matthieu Darbois
66fd497765
Fix unsigned int overflow reported by UBSan ( #759 )
2016-04-28 00:18:37 +02:00
mayeut
20789fed4e
Fix issue 135
...
dwt_interleave_h.gsr105.jp2 now has the same output as kakadu
issue399 is corrupted. Only the corrupted part changes.
Update known failures for x86 MD5
NR-DEC-kodak_2layers_lrcp.j2c-31-decode-md5
NR-DEC-kodak_2layers_lrcp.j2c-32-decode-md5
NR-DEC-issue135.j2k-68-decode-md5
2016-04-27 23:15:47 +02:00
Matthieu Darbois
e6881e7527
Fix negative shift left reported by UBSan ( #758 )
...
Follow-up of #757
This shall have no performance impact on 2’s complement machine where
the compiler replaces the multiplication by power of two (constant) by
a left shift.
Verified at least on MacOS Xcode 7.3, same assembly generated after fix.
2016-04-27 21:56:09 +02:00
Stefan Weil
2296dc9e68
Remove whitespace and CR at line endings ( #678 )
...
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-04-26 22:12:11 +02:00
Matthieu Darbois
6f2ac3ee36
Fix negative shift left reported by UBSan ( #757 )
...
This shall have no performance impact on 2’s complement machine where
the compiler replaces the multiplication by power of two (constant) by
a left shift.
Verified at least on MacOS Xcode 7.3, same assembly generated after fix.
2016-04-26 22:06:06 +02:00
Matthieu Darbois
c559c62853
Do not define __attribute__ in opj_includes.h ( #751 )
...
Fix #727
2016-04-23 14:17:31 +02:00
mayeut
74e814358c
Allow to write 3/5/7/9/11/13/15 bpp TIF files
...
Update uclouvain/openjpeg#729
2016-04-23 04:29:03 +02:00
mayeut
54393d9e38
Allow to read 3/5/7/9/11/13/15 bpp TIF files
2016-04-23 04:24:04 +02:00
Antonin Descampe
e1a93d9e59
Merge pull request #708 from GrokImageCompression/issue_695
...
issue #695 MQ Encode: ensure that bp pointer never points to uninitialized memory
2016-04-18 10:51:51 +02:00
Antonin Descampe
a1c0ee9a86
Merge pull request #734 from senbox-org/opj_dump_dead_code
...
Remove dead code in opj_dump
2016-04-12 10:48:02 +02:00
Julien Malik
e7797b97a1
Fix uninitialized variable reported by cppcheck
...
Also reorder initialization to follow declaration order
2016-04-09 19:02:05 +02:00
Julien Malik
5e5f6999a8
Remove dead code in opj_dump
2016-04-09 18:34:11 +02:00
Aaron Boxer
0069a2bd2f
suppress valgrind error - avoid accessing uninitialized memory in mq encoder
2016-01-30 10:05:46 -05:00
Aaron Boxer
e3100f714c
issue #695 MQ Encode: ensure that bp pointer never points to uninitialized memory
2016-01-28 19:34:00 -05:00
Antonin Descampe
5c5ae1d51a
fixed tile numbering
...
Fixes #245
2016-01-25 17:30:43 +01:00
Antonin Descampe
3767af52de
Merge pull request #648 from stweil/alloc
...
Fix support of posix_memalloc for Linux
2016-01-23 19:43:09 +01:00
Matthieu Darbois
a42d03df79
Merge pull request #551 from mayeut/coc-qcc
...
Add COC/QCC in main header when needed
2016-01-11 00:23:44 +01:00
Even Rouault
6a1974d40d
Add comment explaining bj is not use when l_data_size == 0
2016-01-09 14:30:48 +01:00
Even Rouault
87c0d7dc1e
[git/2.1 regression] Fix opj_write_tile() failure when numresolutions=1
...
When trying the GDAL OpenJPEG driver against openjpeg current master HEAD,
I get failures when trying to create .jp2 files. The driver uses
opj_write_tile() and in some tests numresolutions = 1.
In openjp2/dwt.c:410, l_data_size = opj_dwt_max_resolution( tilec->resolutions,tilec->numresolutions) * (OPJ_UINT32)sizeof(OPJ_INT32);
is called and returns l_data_size = 0. Now in git opj_malloc() has a special case
for 0 to return a NULL pointer whereas previously it relied on system malloc(),
which in my case didn't return NULL.
So only test the pointer value if l_data_size != 0. This makes the GDAL
autotest suite to pass again.
2016-01-08 19:38:45 +01:00
Stefan Weil
9cad6bc1f6
Fix fatal crash on 64 bit Linux
...
By default, OpenJPEG uses the function memalign to allocate aligned
memory on Linux systems. That function needs malloc.h which was
missing. This results in a compiler warning:
openjpeg/src/lib/openjp2/opj_malloc.c:63:3: warning:
implicit declaration of function ‘memalign’
[-Wimplicit-function-declaration]
On hosts where sizeof(int) < sizeof(void *) the return value of memalign
will be truncated which results in an invalid pointer.
That caused "make test" to produce lots of segmentation faults when
running on a 64 bit Linux host.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-01-06 21:40:09 +01:00
Stefan Weil
79b1c4cc85
Fix whitespace issues in opj_malloc.c
...
Some lines ended with spaces. Remove them.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-01-06 21:40:01 +01:00
Stefan Weil
c00ee8bff7
Fix support of posix_memalign for Linux
...
posix_memalign is only declared conditionally in stdlib.h,
so add one of the possible definitions to get the declaration.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-01-06 18:06:45 +01:00
Stefan Weil
99c4f621bd
Fix duplicate article in comments
...
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2016-01-06 08:55:29 +01:00
Stefan Weil
a834ab305f
Fix grammar in comment
...
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2015-12-31 10:13:26 +01:00
Jakub Wilk
4ddc2627dd
Fix typos
2015-11-27 21:38:41 +01:00
mayeut
fb4be3894e
Fix undefined size jp2 box handling
...
Update #653
2015-11-07 01:35:43 +01:00
Stefan Weil
93a61459cd
opj_decompress: Update error message
...
The png format is also supported, so add it to the message.
Remove also the unneeded blank character before \n.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2015-11-01 21:01:20 +01:00
mayeut
38ffbbe42e
Fin compiler warnings
2015-11-01 17:08:47 +01:00
mayeut
ce26e523dd
Fix compiler warnings
2015-11-01 16:56:50 +01:00
Stefan Weil
7dfcbf9d7b
convert: Fix compiler warnings
...
Fix this and other similar compiler warnings:
src/bin/jp2/convert.c: In function ‘tga_readheader’:
src/bin/jp2/convert.c:595:5: warning:
dereferencing type-punned pointer will break strict-aliasing rules
[-Wstrict-aliasing]
cmap_len = get_ushort(*(unsigned short*)(&tga[5]));
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2015-11-01 16:54:38 +01:00
Stefan Weil
4ac509182a
convert: Remove unneeded type casts
...
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2015-11-01 16:53:55 +01:00
Stefan Weil
9f78c68953
Fix typo in comments
...
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2015-10-29 20:37:27 +01:00
Matthieu Darbois
f080ab8ce0
Merge pull request #638 from stweil/master
...
Fix format strings and unneeded assignment
2015-10-21 20:53:22 +02:00
mayeut
e975ca2832
Merge branch 'master' into coc-qcc
2015-10-21 20:45:50 +02:00
Stephan Mühlstrasser
b7a162348d
Avoid pointer arithmetic with (void *) pointers.
2015-10-21 09:01:31 +02:00
mayeut
d48be27f5a
Generic aligned malloc implementation update.
...
Update #642
2015-10-21 00:09:04 +02:00
Stephan Mühlstrasser
eaf55b677c
Generic aligned malloc implementation.
...
Used for platforms where none of posix_memalign(), memalign() and
_aligned_malloc() is available.
2015-10-20 21:34:54 +02:00
Stephan Mühlstrasser
a1fc83cc25
Fix HP compiler warning about redeclaration of function ( #640 )
...
HP compiler warns:
cc: "dwt.c", line 798: warning 562: Redeclaration of "opj_v4dwt_decode"
with a different storage class specifier: "opj_v4dwt_decode" will have
internal linkage.
cc: "t2.c", line 1341: warning 562: Redeclaration of "opj_t2_init_seg"
with a different storage class specifier: "opj_t2_init_seg" will have
internal linkage.
2015-10-19 12:14:27 +02:00
Stefan Weil
ad7eb5630e
Fix format strings and unneeded assignment
...
The static code analyzer cppcheck warns about unsigned integers
which use "%d" in the format string.
It also warns about an unneeded assignment.
Fix both issues.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2015-10-18 19:52:57 +02:00
mayeut
80be580d50
Merge branch 'master' into coc-qcc
2015-10-18 03:23:38 +02:00
Matthieu Darbois
05b3afd28f
Merge pull request #636 from uclouvain/opj_malloc-625
...
Update allocation functions
Fix #625
Fix #624
Fix #635
2015-10-18 03:14:55 +02:00
mayeut
e1122a8f50
Cleanup includes
2015-10-18 02:52:33 +02:00
mayeut
f9d47e28b9
Fix _aligned_malloc usage
2015-10-18 02:23:01 +02:00
mayeut
8034ffde8b
Fix inconsistent behavior of malloc(0)
...
Update #635
Update #625
2015-10-17 02:55:09 +02:00
mayeut
b3a15954f6
Add missing checks. Fix crash on failed allocation.
2015-10-17 02:16:17 +02:00
mayeut
83249c318f
Fixed crash on encoding
...
Update #624
Update #625
2015-10-17 01:30:23 +02:00
Stephan Mühlstrasser
b3c581760f
Fix OpenJPEG GitHub issue #633 .
...
"opj_includes.h" must be included before system headers, otherwise
inconsistent definitions of configuration macros lead to build
failures on AIX.
2015-10-15 10:53:33 +02:00
mayeut
c8d03fea9b
Merge branch 'master' into coc-qcc
2015-10-13 21:57:58 +02:00
Mathieu Malaterre
372fead0d7
Remove the explicit restrict keyword
...
It would trigger a compiler error on xlc compiler. Fixes #620
2015-10-13 21:07:11 +02:00
Giuseppe Baruffa
98324bbd6b
I do not recall exactly... I would say that the correct version should be
...
if (!JPWL_ASSUME)
return false;
meaning that once JPWL_ASSUME=1 the code will pass over such errors and try to decode anyway (just paired with the other JPWL_ASSUME on line 1112).
Fixes #596
2015-10-13 15:20:54 +02:00
Mathieu Malaterre
26dcb7c125
Remove a possible uninitialized variable
...
Fixes #629
2015-10-12 21:29:12 +02:00
Mathieu Malaterre
51a67a9cbf
Minor style fix to remove c++ comments
2015-10-12 21:25:53 +02:00
Mathieu Malaterre
dd81b5892d
minor tweaks to the code
2015-10-12 21:24:10 +02:00
Mathieu Malaterre
ab8929262a
Fix an issue with parenthesis
2015-10-10 21:03:44 +02:00
Mathieu Malaterre
dc869c2985
Add paranoid sentinels
2015-10-10 18:38:08 +02:00
Mathieu Malaterre
d753441028
implement a portable aligned realloc
2015-10-10 17:51:29 +02:00
Mathieu Malaterre
2d410fc74b
do not use aligned_alloc since it requires c11
2015-10-10 14:54:21 +02:00
Mathieu Malaterre
0dc4914b4e
cleanup header file and move to implementation
2015-10-09 22:04:04 +02:00
mayeut
de0a9ed103
Revert "Make sure to allocate on 16bits alignement. Fix issue #624 "
...
This reverts commit 553714a87a
.
2015-10-09 21:13:06 +02:00
Mathieu Malaterre
553714a87a
Make sure to allocate on 16bits alignement. Fix issue #624
2015-10-09 15:37:09 +02:00
mayeut
3259fe2ff8
Merge branch 'master' into coc-qcc
2015-10-08 19:11:52 +02:00
Stefan Weil
c8ae3c5225
Fix warnings for C++
...
g++ complains about invalid conversions like these ones:
error: invalid conversion from ‘const char*’ to ‘char*’ [-fpermissive]
error: invalid conversion from ‘void*’ to ‘opj_precision* {aka opj_prec*}’ [-fpermissive]
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2015-10-07 20:53:57 +02:00
Stephan Mühlstrasser
8414870ca7
Fixed problem that C++ compilation failed because of enum variable.
...
Replaced usage of an enum typedef for a variable that is used
for bit flags with OPJ_UINT32 type.
2015-10-07 12:28:12 +02:00
mayeut
2dab5fed59
Merge branch 'master' into coc-qcc
2015-10-06 20:55:36 +02:00
Stephan Mühlstrasser
d6b51b7041
Added missing casts for return values of opj_malloc()/opj_calloc().
2015-10-06 15:33:46 +02:00
mayeut
db23831d57
Add check for seek support before trying TPsot==TNsot workaround
2015-10-02 22:33:44 +02:00
mayeut
cf352af089
Fix up-scaling bit depth
...
Fixes #609
2015-09-29 09:28:34 +02:00
Stefan Weil
05235963d9
Fix typo in variable name
...
This makes checks with codespell easier.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2015-09-29 05:57:09 +02:00
Stefan Weil
99fc1ab306
Fix typos in comments and string
...
Most typos were found by codespell.
Signed-off-by: Stefan Weil <sw@weilnetz.de>
2015-09-29 05:55:43 +02:00
mayeut
838dfb8058
Provide safer string copy than strncpy
...
As per @boxerab suggestion in commit
b9ca882749
2015-09-25 22:04:58 +02:00
mayeut
4da7e9617f
Fix resource leak
2015-09-25 00:39:05 +02:00
mayeut
b9ca882749
Fix resource leaks & unchecked resource allocations
2015-09-25 00:08:34 +02:00
mayeut
f9df8ba19a
Fix some resource leaks
2015-09-24 23:32:03 +02:00
mayeut
f82d7f3a63
Use buffer on stack to read TGA header
...
Fixes a potential leak
Fixes #601
2015-09-23 21:17:06 +02:00
mayeut
faf63fddad
Fix warning in rle4 decoding
2015-09-23 21:09:19 +02:00
mayeut
55dbf8acff
Fix resource leak in opj_j2k_create_cstr_index
...
Fixes #599
2015-09-17 12:46:42 +02:00
mayeut
c16c91797f
Fix resource leak in opj_j2k_encode
...
Fixes #598
2015-09-17 12:41:41 +02:00
mayeut
a4e93c3b0a
fix resource leak in opj_j2k_decode_one_tile
...
Fixes #597
2015-09-17 12:31:18 +02:00
mayeut
4bb5e24d23
Merge branch 'master' into coc-qcc
2015-09-17 02:12:27 +02:00
mayeut
c8a3117659
Fix function name
2015-09-13 14:51:00 +02:00
mayeut
49cbc11a19
Correct leak in color_cielab_to_rgb
2015-09-13 14:42:56 +02:00
Matthieu Darbois
bac2c9e0a3
Change test in opj_tcd_makelayer
...
Remove float equality test. Such a test has no meaning.
2015-09-11 14:17:30 +02:00
Matthieu Darbois
ee0f313848
Update check in opj_tcd_makelayer to be robust to different float precisions
2015-09-10 15:46:51 +02:00
Matthieu Darbois
ccdce606f1
Fix threshold calculation
...
It doesn't change the outcome of the test suite, that's weird...
2015-09-10 15:10:14 +02:00
mayeut
5f02757eef
Correct lossless issue on linux x86
...
Update uclouvain/openjpeg#571
2015-09-10 00:39:23 +02:00
mayeut
4f5ec07c31
Remove C++ comment
2015-09-09 23:38:46 +02:00
mayeut
66d890bf22
Merge remote-tracking branch 'uclouvain/master' into coc-qcc
2015-09-08 22:33:07 +02:00
mayeut
29c644ec49
Correct mismatching delete
...
Fixes #575
2015-09-07 19:24:20 +02:00
mayeut
940100c28a
Fix potential use-after-free in opj_j2k_write_mco function
...
Fixes #563
2015-09-06 17:24:03 +02:00
mayeut
c31fb68ccc
fix resource leak in jpwl
...
Fixes #573
2015-09-06 17:18:37 +02:00
mayeut
c5dd6035c9
Correct CMake version requirements
...
Update uclouvain/openjpeg#488
2015-09-01 20:43:43 +02:00
mayeut
8a95efcd3f
Fix some UBSan warnings
2015-08-23 11:43:38 +02:00
mayeut
38770403d4
Fix some calculations in opj_tcd_init_tile
...
Fixes #486
Fixes #394
Update #480
Update #388
2015-08-23 11:38:04 +02:00
mayeut
a521472427
Add tests for CMYK/esYCC/CIELab
2015-08-21 21:41:50 +02:00
mayeut
d4ac2f613d
Fix formatting
2015-08-21 20:17:55 +02:00
mayeut
fa9142b7e4
Fix formatting
2015-08-21 20:15:50 +02:00
mayeut
f98df1c715
TIFF can output CMYK
2015-08-21 19:54:22 +02:00
Matthieu Darbois
3109759fd7
Merge pull request #559 from szukw000/cmyk-cielab-esycc
...
Add support for CIELab, EYCC and CMYK
2015-08-21 19:48:31 +02:00
szukw000
238f4419ab
Defines three new functions
...
Declares three new functions
Calls the three new functions
Collects data for CIELab, sets the color_space for EYCC and CMYK
2015-07-30 23:31:12 +00:00
mayeut
60301842c7
Sync coc-qcc branch with master
2015-07-31 01:07:14 +02:00
ak-dxdy
acbb297a0a
Small correction + attempt to understand git-openjpeg workflow
2015-07-31 00:51:31 +02:00
ak-dxdy
4fc1073809
French comments replaced by English ones
2015-07-31 00:51:08 +02:00
Matthieu Darbois
7c688c3453
Merge pull request #558 from mayeut/remove-printf
...
Remove printf/fprintf to stdout/stderr throughout openjp2 lib
2015-07-30 23:37:20 +02:00
mayeut
372c887aad
Fix typo (that brakes building with '-DBUILD_MJ2:bool=on')
...
Fixes #556
2015-07-30 23:34:12 +02:00
mayeut
0df90afdf7
Remove printf/fprintf to stdout/stderr throughout openjp2 lib
...
Update uclouvain/openjpeg#246
2015-07-30 23:26:31 +02:00
Rex Dieter
e4735c703d
better -ffast-math handling
...
issue #488
See also
http://public.kitware.com/pipermail/cmake/2015-April/060479.html
2015-07-30 09:54:07 -05:00
mayeut
c3d9719cd4
Write COC/QCC in Main Header
...
Update uclouvain/openjpeg#459
2015-07-29 00:29:49 +02:00
mayeut
2263b6bacc
Start support for qcc/coc
2015-07-28 23:58:10 +02:00
mayeut
b0035538af
Use __emul under msvc x86 for fast 64 = 32 * 32
...
Update uclouvain/openjpeg#220
2015-07-27 20:12:48 +02:00
mayeut
45ccf501f0
Fix ARM build with Visual Studio
2015-07-26 21:12:36 +02:00
mayeut
15e4168ee2
Remove some warnings when building
...
Update #442
2015-07-26 19:19:31 +02:00
mayeut
2452bb7c45
Remove some warnings when building
...
Update #442
2015-07-26 19:01:52 +02:00
mayeut
f3dad25c77
Update convert for PNG output
...
Update uclouvain/openjpeg#264
2015-07-26 18:28:03 +02:00
mayeut
e6cf1744d4
Remove some warnings when building
...
Update #442
2015-07-26 13:41:59 +02:00
mayeut
c423cc84e7
Remove some warnings when building
...
Update #442
2015-07-26 02:41:39 +02:00
Matthieu Darbois
8c4afeff40
Merge pull request #521 from manisandro/bigendian
...
Fix opj_write_bytes_BE
Fixes #472
Fixes #345
Fixes #518
2015-07-25 15:54:26 +02:00
mayeut
ffd9db9700
Remove some warnings when building
...
Update #442
2015-07-25 03:16:16 +02:00
mayeut
b190a91ab5
Remove some warnings when building
...
Update #442
2015-07-24 23:55:45 +02:00
mayeut
a56819eaab
Add some missing static keywords
...
Update uclouvain/openjpeg#243
2015-07-23 07:48:42 +02:00
mayeut
9ac3a1572e
Prevent overflow when coding 16 bits images
...
Update uclouvain/openjpeg#539
2015-07-22 00:10:32 +02:00
Matthieu Darbois
28c6f54798
Merge pull request #533 from mayeut/refactor-read-ppX
...
Refactor opj_j2k_read_ppm & opj_j2k_read_ppt
Fixes uclouvain/openjpeg#470
Fixes uclouvain/openjpeg#288
Fixes uclouvain/openjpeg#532
2015-07-21 01:26:02 +02:00
mayeut
1bbb607069
Merge remote-tracking branch 'uclouvain/master' into issue-235
2015-07-21 00:20:05 +02:00
mayeut
5bb074611a
Update PNG support
...
Only input modified for now
Update uclouvain/openjpeg#536
Update uclouvain/openjpeg#264
2015-07-19 17:42:11 +02:00
mayeut
46c1dd22fc
Correct error message for invalid TIFF input
2015-07-19 15:01:12 +02:00
mayeut
ae4799ad07
Add some missing static
...
Still needs to check j2k.c & jp2.c
Update uclouvain/openjpeg#243
2015-07-18 02:39:32 +02:00
mayeut
b88025b38f
Add headers to CMake target
2015-07-18 01:50:17 +02:00
mayeut
8048bbc7a2
Add tests for TIFF input with Alpha channel
...
Update uclouvain/openjpeg#322
2015-07-18 00:07:04 +02:00
mayeut
635a358962
Fix build warnings in converttif.c
2015-07-16 06:51:21 +02:00
mayeut
8f798864a9
Update imagetotif to support more output TIF formats
...
Update uclouvain/openjpeg#322
Update uclouvain/openjpeg#264
2015-07-16 00:26:02 +02:00
mayeut
ac9fb5a302
Update tiftoimage to support more input TIF formats
...
Update uclouvain/openjpeg#322
Update uclouvain/openjpeg#264
2015-07-14 23:51:02 +02:00
mayeut
775ee87776
Add checks for odd looking cmap & for cmap outside jp2h box
...
Update uclouvain/openjpeg#235
Update uclouvain/openjpeg#447
2015-07-12 19:39:30 +02:00
mayeut
0b1f8eb6f7
Merge pull request #529 from renevanderark/master
...
fix Suspicious code in j2k.c
Fixes #517
2015-07-12 19:20:57 +02:00
mayeut
c887df12a3
Refactor opj_read_ppm
...
Update uclouvain/openjpeg#470
Update uclouvain/openjpeg#288
2015-07-12 18:09:30 +02:00
mayeut
d1b053afe2
Refactor opj_j2k_read_ppt
...
Update uclouvain/openjpeg#470
Update uclouvain/openjpeg#532
2015-07-12 15:55:58 +02:00
mayeut
dc43ebf96c
Add option to force component splitting in imagetopnm
...
Update uclouvain/openjpeg#289
2015-07-11 11:35:21 +02:00
Rene van der Ark
ba05549b0f
fix Suspicious code in j2k.c #517
2015-07-08 11:13:31 +02:00
mayeut
237ddd72f1
Merge pull request #514 from mayeut/issue-254
...
Correctly decode files with incorrect tile-part header fields (TPsot==TNsot)
Fixes uclouvain/openjpeg#254
2015-07-04 00:47:59 +02:00
mayeut
c999b6c0f0
uclouvain/openjpeg#254 Add build option to disable the fix
2015-07-04 00:04:55 +02:00
Antonin Descampe
eadfad7a50
commented out printf line
2015-07-03 17:36:39 +02:00
Antonin Descampe
14361eee24
commented out a printf line
2015-07-03 16:35:16 +02:00
Aaron Boxer
c9e231508b
various small T1 optimizations
2015-07-03 15:23:15 +02:00
Aaron Boxer
6347686385
fixed a few bugs
2015-07-03 15:22:58 +02:00
Aaron Boxer
1a8f929111
visual studio lrintf is very slow - do not use
2015-07-03 15:22:42 +02:00
Aaron Boxer
56d3f5af6e
add timing to compress and decompress
2015-07-03 15:20:11 +02:00
Sandro Mani
c665e81a39
Fix opj_write_bytes_BE ( #518 )
2015-06-25 23:11:22 +02:00
mayeut
c7535d084e
Merge branch 'master' into issue-254
2015-06-05 20:42:57 +02:00
Matthieu Darbois
c0d7afe15c
[trunk] Fix offset computations in opj_j2k_update_image_data
...
Update issue 481
2015-06-03 20:56:13 +00:00
Matthieu Darbois
6def7e38b4
[trunk] Fix wrong return value for opj_setup_encoder & opj_set_decoded_resolution_factor (fixes issue 497)
...
Thanks Aaron.
2015-05-29 21:58:08 +00:00
Matthieu Darbois
73881d0e52
[trunk] Fix sscanf format specifier (fixes issue 494)
...
Thanks Aaron.
2015-05-28 22:16:49 +00:00
Matthieu Darbois
e3291c4e1f
[trunk] Fix overflow in opj_image_comp_header_update (fixes issue 495)
2015-05-27 23:05:16 +00:00
Matthieu Darbois
0fa5a17c98
[trunk] Correct potential double free on malloc failure in opj_j2k_copy_default_tcp_and_create_tcp (fixes issue 492)
2015-05-19 21:57:27 +00:00
Matthieu Darbois
757f9394bf
[trunk] Add check for number of layers & cblkw/cblkh values (fixes issue 475)
2015-05-19 21:24:44 +00:00
Matthieu Darbois
daed8cc919
[trunk] Add check for at most 1 COD marker per tile. 1 COD marker for MH (fixes issue 476)
2015-05-19 20:13:37 +00:00
mayeut
d1a941ea50
Revert "Correct overflows in opj_j2k_update_image_data"
...
This reverts commit 1fb24aba4b
.
2015-05-16 14:22:16 +02:00
mayeut
00a47c1e06
Implement TNsot correction for non conforming files
2015-05-16 11:15:29 +02:00
mayeut
1fb24aba4b
Correct overflows in opj_j2k_update_image_data
2015-05-16 02:51:31 +02:00
Antonin Descampe
2d24b6000d
[trunk] added overflow checks (fixes issue 431)
...
Thanks mdarbois
2015-02-02 16:11:31 +00:00
Antonin Descampe
8b5e2a5143
[trunk] fixes a bug that prevented opj_decompress to take directory as input (fixes issue 463)
...
Thanks Aaron.
2015-02-02 16:11:23 +00:00
Matthieu Darbois
3ed5858902
[trunk] use hidden visibility for static library (fixes issue 354)
2015-01-25 16:59:39 +00:00
Antonin Descampe
7a8cdc4bb0
[trunk] fixed a bug encoutntered when multiple MCT markers are provided
...
Update issue 430
Cc: savmickael@gmail.com
@Mickael: this revision affects your work on custom MCT. Is there a way
you could provide test data to add to our test suite ? Thanks
2015-01-20 16:29:16 +00:00
Antonin Descampe
4c0ed02806
[trunk] checks for JP2 signature and file type boxes more carefully
...
Update issue 430
2015-01-20 14:27:20 +00:00
Antonin Descampe
5d00b719f4
[trunk] fixed a buffer overflow in opj_tcd_init_decode_tile
...
Update issue 431
2015-01-15 18:16:29 +00:00
Matthieu Darbois
42132ed6b5
[trunk] removed warning from convertbmp.c
...
Update issue 442
2014-12-27 11:31:43 +00:00
Matthieu Darbois
31f5efe453
[trunk] fixed typo in opj_decompress (fixes issue 465)
2014-12-26 15:37:16 +00:00
Matthieu Darbois
78a7762e3f
[trunk] removed unnecessary operation in opj_bio_flush (fixes issue 461)
2014-12-23 16:05:19 +00:00
Matthieu Darbois
33f52fb611
[trunk] removed warning from convert.c
...
Update issue 442
2014-12-23 16:03:45 +00:00
Matthieu Darbois
81abe5b3bb
[trunk] fixed imagetoraw unsigned 16bits conversion (fixes issue 460)
2014-12-23 15:06:23 +00:00
Matthieu Darbois
4a09296771
[trunk] removed warning from convertbmp.c
...
Update issue 442
2014-12-23 10:13:28 +00:00
Matthieu Darbois
6922124c4c
[trunk] fixed colorspace mapping for raw grayscale images (fixes issue 456)
2014-12-22 18:39:14 +00:00
Matthieu Darbois
59b844347c
[trunk] fixed component precision upscaling in opj_decompress (fixes issue 458)
2014-12-22 15:50:32 +00:00
Matthieu Darbois
bde5ba6ae8
[trunk] fixed compression check for 1 bit unsigned component (fixes issue 457)
2014-12-22 15:00:12 +00:00
Matthieu Darbois
16240e21f9
[trunk] updated BMP format input support
...
Update issue 203
2014-12-22 14:40:31 +00:00
Matthieu Darbois
33a0e66eb1
[trunk] updated BMP format input support
...
Update issue 203
2014-12-22 13:14:37 +00:00
Matthieu Darbois
f1bae45c76
[trunk] fixed BMP reading for 8bpp when width & 3 == 1
...
Update issue 203
2014-12-20 18:45:53 +00:00
Matthieu Darbois
e966fef3eb
[trunk] fixed a possible overflow in opj_t1_encode_cblks call to opj_int_fix_mul (fixes issue 141)
2014-12-20 13:03:11 +00:00
Matthieu Darbois
dde788b59e
[trunk] Updated checks regarding number of decomposition levels when compressing
...
Update issue 215
2014-12-19 22:56:00 +00:00
Matthieu Darbois
58fc86452d
[trunk] Fixed a crash on illegal tile offset when decoding
...
Update issue 427
2014-12-18 22:56:38 +00:00
Matthieu Darbois
c0cb119c0e
[trunk] Fixed a crash on 0xh or wx0 image size decoding
...
Update issue 427
2014-12-18 22:19:52 +00:00
Matthieu Darbois
9a21e1eef0
[trunk] removed warnings when building tcd.c (Update issue 442)
2014-12-15 18:48:50 +00:00
Matthieu Darbois
a0688a9874
[trunk] Add SSE2/SSE41 implementations for mct.c (fixes issue 451)
2014-12-13 12:29:22 +00:00
Matthieu Darbois
d0ce2ced53
[trunk] Speed-up opj_int_fix_mul by removing unneeded operation
...
Update issue 220
2014-12-13 10:27:21 +00:00
Matthieu Darbois
e05d2901ec
[trunk] Reduce encoder code block memory usage for non 64x64 code block sizes (fixes issue 444)
2014-12-12 21:54:22 +00:00
Matthieu Darbois
c0710f557c
[trunk] Fixed invalid check in in tiff reading method (fixes issue 449)
2014-12-11 20:21:26 +00:00
Antonin Descampe
8d320bbdf8
[trunk] check number of components when getting mct norm (fixes issue 436)
2014-12-09 12:09:08 +00:00
Matthieu Darbois
776b83ddbc
[trunk] Fixed compilation error under Visual Studio 2003 (fixes issue 351)
2014-12-09 05:44:55 +00:00
Matthieu Darbois
04ace2a558
[trunk] Fixed typo in opj_compress error report (fixes issue 350)
2014-12-02 20:18:50 +00:00
Matthieu Darbois
570dd13f55
[trunk] removed some warnings when configuring with CMake 3.x on MacOS
...
Update issue 443
Warnings related to OPJ_USE_DSYMUTIL are fixed
2014-11-25 21:52:24 +00:00
Matthieu Darbois
63f877769c
[trunk] removed some warnings when building src/bin/jp2/convert.c
...
Update issue 442
2014-11-25 20:06:12 +00:00
Matthieu Darbois
04c6bb4a72
[trunk] removed warnings when building jp2.c (Update issue 442)
2014-11-24 21:31:09 +00:00
Matthieu Darbois
131cc98491
[trunk] added an option to upsample image components in opj_decompress
...
Update issue 289
Issue is left open since there's still one image failing the tests.
2014-11-22 17:59:07 +00:00
Matthieu Darbois
13bcb63b73
[trunk] fixed pnmtoimage for odd pgm files (fixes issue 294)
2014-11-22 14:09:16 +00:00
Matthieu Darbois
0ba5d15b58
[trunk] fixed warning in option to force rgb output in opj_decompress (fixes issue 282)
2014-11-22 12:30:04 +00:00
Matthieu Darbois
7e38446075
[trunk] added option to force rgb output in opj_decompress (fixes issue 282 , fixes issue 286)
2014-11-22 00:04:39 +00:00
Matthieu Darbois
548aff34f4
[trunk] added check for tile component data size overflow (fixes issue 432)
2014-11-21 21:35:43 +00:00
Matthieu Darbois
8397eac382
[trunk] added check for pclr box validity (fixes issue 429)
2014-11-20 23:47:09 +00:00
Matthieu Darbois
a2c2d86d3d
[trunk] fixed memleak in abnormal condition (fixes issue 437)
2014-11-20 20:13:47 +00:00
Matthieu Darbois
3bc360fc9d
[trunk] added option to force output bit depth in opj_decompress (fixes issue 283)
2014-11-19 20:05:39 +00:00
Matthieu Darbois
ae1da37558
[trunk] replace OPJ_MACRO_TCD_ALLOCATE macro by inlined function (fixes issue 433)
2014-11-19 19:08:09 +00:00
Matthieu Darbois
f57f59b10d
[trunk] remove warning during build (fixes issue 435)
2014-11-18 18:30:44 +00:00
Matthieu Darbois
b65e3ebdb6
[trunk] fixed a bug leading to jpwl build failure & add related odd width/height sYCC tests (fixes issue 422)
2014-11-18 00:07:50 +00:00
Matthieu Darbois
f123ce8f8a
[trunk] fixed a bug preventing palette image with cdef to decode properly using opj_get_decoded_tile (fixes issue 428)
2014-11-17 21:46:43 +00:00