summaryrefslogtreecommitdiff
path: root/src/lib/openjp2
diff options
context:
space:
mode:
authorEven Rouault <even.rouault@spatialys.com>2024-11-13 18:24:17 +0100
committerEven Rouault <even.rouault@spatialys.com>2024-11-13 18:24:17 +0100
commit2be5f148ebff79e7456c77e57f85af640cf211de (patch)
tree433e410a4c38c376ca6f30f372b58f3f5f87dcd9 /src/lib/openjp2
parent497d58c1ee9980213ec99c0f8d42627e7307c0e5 (diff)
Ammend previous commit to remove new OPJ_DPARAMETERS_DISABLE_TPSOT_FIX flag, and make it active when opj_decoder_set_strict_mode() is called with true
Diffstat (limited to 'src/lib/openjp2')
-rw-r--r--src/lib/openjp2/j2k.c6
-rw-r--r--src/lib/openjp2/openjpeg.h15
2 files changed, 10 insertions, 11 deletions
diff --git a/src/lib/openjp2/j2k.c b/src/lib/openjp2/j2k.c
index 4de78e86..19082974 100644
--- a/src/lib/openjp2/j2k.c
+++ b/src/lib/openjp2/j2k.c
@@ -6752,9 +6752,6 @@ void opj_j2k_setup_decoder(opj_j2k_t *j2k, opj_dparameters_t *parameters)
j2k->m_cp.m_specific_param.m_dec.m_reduce = parameters->cp_reduce;
j2k->dump_state = (parameters->flags & OPJ_DPARAMETERS_DUMP_FLAG);
- if (parameters->flags & OPJ_DPARAMETERS_DISABLE_TPSOT_FIX) {
- j2k->m_specific_param.m_decoder.m_nb_tile_parts_correction_checked = 1;
- }
#ifdef USE_JPWL
j2k->m_cp.correct = parameters->jpwl_correct;
j2k->m_cp.exp_comps = parameters->jpwl_exp_comps;
@@ -6767,6 +6764,9 @@ void opj_j2k_decoder_set_strict_mode(opj_j2k_t *j2k, OPJ_BOOL strict)
{
if (j2k) {
j2k->m_cp.strict = strict;
+ if (strict) {
+ j2k->m_specific_param.m_decoder.m_nb_tile_parts_correction_checked = 1;
+ }
}
}
diff --git a/src/lib/openjp2/openjpeg.h b/src/lib/openjp2/openjpeg.h
index 05cec0e3..59abd323 100644
--- a/src/lib/openjp2/openjpeg.h
+++ b/src/lib/openjp2/openjpeg.h
@@ -548,11 +548,6 @@ typedef struct opj_cparameters {
#define OPJ_DPARAMETERS_IGNORE_PCLR_CMAP_CDEF_FLAG 0x0001
#define OPJ_DPARAMETERS_DUMP_FLAG 0x0002
-/** Disable at runtime the check for invalid TPSOT values added in
- * https://github.com/uclouvain/openjpeg/pull/514.
- */
-#define OPJ_DPARAMETERS_DISABLE_TPSOT_FIX 0x0004
-
/**
* Decompression parameters
* */
@@ -1353,9 +1348,13 @@ OPJ_API OPJ_BOOL OPJ_CALLCONV opj_setup_decoder(opj_codec_t *p_codec,
opj_dparameters_t *parameters);
/**
- * Set strict decoding parameter for this decoder. If strict decoding is enabled, partial bit
- * streams will fail to decode. If strict decoding is disabled, the decoder will decode partial
- * bitstreams as much as possible without erroring
+ * Set strict decoding parameter for this decoder.
+ * If strict decoding is enabled, partial bit streams will fail to decode, and
+ * the check for invalid TPSOT values added in https://github.com/uclouvain/openjpeg/pull/514
+ * will be disabled.
+ * If strict decoding is disabled, the decoder will decode partial
+ * bitstreams as much as possible without erroring, and the TPSOT fixing logic
+ * will be enabled.
*
* @param p_codec decompressor handler
* @param strict OPJ_TRUE to enable strict decoding, OPJ_FALSE to disable