diff --git a/Utilities/otbopenjpeg/libopenjpeg/j2k.c b/Utilities/otbopenjpeg/libopenjpeg/j2k.c
index 660e91b09bc7072e27957de48b14f5598800175c..f1662a69ee94b16323517d0ef5187ef7ef183b66 100644
--- a/Utilities/otbopenjpeg/libopenjpeg/j2k.c
+++ b/Utilities/otbopenjpeg/libopenjpeg/j2k.c
@@ -8114,7 +8114,7 @@ opj_bool j2k_allocate_tile_element_cstr_index(opj_j2k_v2_t *p_j2k)
 {
 	OPJ_UINT32 it_tile=0;
 
-	p_j2k->cstr_index->nb_of_tiles = p_j2k->m_cp.tw * p_j2k->m_cp.tw;
+	p_j2k->cstr_index->nb_of_tiles = p_j2k->m_cp.tw * p_j2k->m_cp.th;
 	p_j2k->cstr_index->tile_index = (opj_tile_index_t*)opj_calloc(p_j2k->cstr_index->nb_of_tiles, sizeof(opj_tile_index_t));
 	if (!p_j2k->cstr_index->tile_index)
 		return OPJ_FALSE;