summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMathieu Malaterre <mathieu.malaterre@gmail.com>2014-03-14 15:01:13 +0000
committerMathieu Malaterre <mathieu.malaterre@gmail.com>2014-03-14 15:01:13 +0000
commit7e1d01216194f0f7ccf987dde5225144f76b50eb (patch)
tree91efb2fd33d51499c82bc46e704cfdf2b81c88cd
parentde7460577753a7ed47a292e803428f60eec9dac9 (diff)
[trunk] Now that issue 165 dataset is in non regression repository, activate code to reject them
Fixes issue 165
-rw-r--r--src/lib/openjp2/j2k.c5
-rw-r--r--tests/nonregression/CMakeLists.txt1
-rw-r--r--tests/nonregression/test_suite.ctest.in2
3 files changed, 8 insertions, 0 deletions
diff --git a/src/lib/openjp2/j2k.c b/src/lib/openjp2/j2k.c
index 8790fc33..4434bf11 100644
--- a/src/lib/openjp2/j2k.c
+++ b/src/lib/openjp2/j2k.c
@@ -3163,6 +3163,11 @@ static OPJ_BOOL opj_j2k_read_poc ( opj_j2k_t *p_j2k,
l_old_poc_nb = l_tcp->POC ? l_tcp->numpocs + 1 : 0;
l_current_poc_nb += l_old_poc_nb;
+ if(l_current_poc_nb >= 32)
+ {
+ opj_event_msg(p_manager, EVT_ERROR, "Too many POCs %d\n", l_current_poc_nb);
+ return OPJ_FALSE;
+ }
assert(l_current_poc_nb < 32);
/* now poc is in use.*/
diff --git a/tests/nonregression/CMakeLists.txt b/tests/nonregression/CMakeLists.txt
index 51664256..04151aa4 100644
--- a/tests/nonregression/CMakeLists.txt
+++ b/tests/nonregression/CMakeLists.txt
@@ -25,6 +25,7 @@ set(BLACKLIST_JPEG2000_TMP
26ccf3651020967f7778238ef5af08af.SIGFPE.d25.527.jp2
4035.pdf.SIGSEGV.d8b.3375.jp2
3635.pdf.asan.77.2930.jp2
+ issue165.jp2
)
# Define a list of file which should be gracefully rejected:
diff --git a/tests/nonregression/test_suite.ctest.in b/tests/nonregression/test_suite.ctest.in
index a0c89eda..47d26a93 100644
--- a/tests/nonregression/test_suite.ctest.in
+++ b/tests/nonregression/test_suite.ctest.in
@@ -142,6 +142,8 @@ opj_decompress -i @INPUT_NR_PATH@/issue208.jp2 -o @TEMP_PATH@/i
opj_decompress -i @INPUT_NR_PATH@/issue211.jp2 -o @TEMP_PATH@/issue211.jp2.pgx
# issue 171
opj_decompress -i @INPUT_NR_PATH@/issue171.jp2 -o @TEMP_PATH@/issue171.jp2.pgx
+# issue 171
+!opj_decompress -i @INPUT_NR_PATH@/issue165.jp2 -o @TEMP_PATH@/issue165.jp2.pgx
# decode with specific area
# prec=12; nb_c=1