Backport 734d57d5f7842aa7c2c9f36d62131ab4d8bd6c87 from libopenjpeg20 am: 3e2c4b9394 am: 68ef92134c am: fdc91d98d6
am: a3c495c1ca
Change-Id: Id3f29aa5061e28161ba7ca9e1f23f89e064d229d
diff --git a/core/src/fxcodec/fx_libopenjpeg/libopenjpeg20/j2k.c b/core/src/fxcodec/fx_libopenjpeg/libopenjpeg20/j2k.c
index 7b4bc58..e545819 100644
--- a/core/src/fxcodec/fx_libopenjpeg/libopenjpeg20/j2k.c
+++ b/core/src/fxcodec/fx_libopenjpeg/libopenjpeg20/j2k.c
@@ -5398,6 +5398,7 @@
OPJ_UINT32 l_nb_collections;
OPJ_UINT32 l_nb_comps;
OPJ_UINT32 l_nb_bytes_by_comp;
+ OPJ_BOOL l_new_mcc = OPJ_FALSE;
/* preconditions */
assert(p_header_data != 00);
@@ -5459,6 +5460,7 @@
memset(l_mcc_record,0,(l_tcp->m_nb_max_mcc_records-l_tcp->m_nb_mcc_records) * sizeof(opj_simple_mcc_decorrelation_data_t));
}
l_mcc_record = l_tcp->m_mcc_records + l_tcp->m_nb_mcc_records;
+ l_new_mcc = OPJ_TRUE;
}
l_mcc_record->m_index = l_indix;
@@ -5594,7 +5596,9 @@
return OPJ_FALSE;
}
- ++l_tcp->m_nb_mcc_records;
+ if (l_new_mcc) {
+ ++l_tcp->m_nb_mcc_records;
+ }
return OPJ_TRUE;
}