From 7e1d01216194f0f7ccf987dde5225144f76b50eb Mon Sep 17 00:00:00 2001 From: Mathieu Malaterre Date: Fri, 14 Mar 2014 15:01:13 +0000 Subject: [PATCH] [trunk] Now that issue 165 dataset is in non regression repository, activate code to reject them Fixes issue 165 --- src/lib/openjp2/j2k.c | 5 +++++ tests/nonregression/CMakeLists.txt | 1 + tests/nonregression/test_suite.ctest.in | 2 ++ 3 files changed, 8 insertions(+) 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