87 lines
4.9 KiB
Diff
87 lines
4.9 KiB
Diff
diff --git a/third_party/libopenjpeg20/j2k.c b/third_party/libopenjpeg20/j2k.c
|
|
index c5f9dd53e..1869833f7 100644
|
|
--- a/third_party/libopenjpeg20/j2k.c
|
|
+++ b/third_party/libopenjpeg20/j2k.c
|
|
@@ -2311,10 +2311,8 @@ static OPJ_BOOL opj_j2k_read_siz(opj_j2k_t *p_j2k,
|
|
}
|
|
|
|
/* Compute the number of tiles */
|
|
- l_cp->tw = (OPJ_UINT32)opj_int_ceildiv((OPJ_INT32)(l_image->x1 - l_cp->tx0),
|
|
- (OPJ_INT32)l_cp->tdx);
|
|
- l_cp->th = (OPJ_UINT32)opj_int_ceildiv((OPJ_INT32)(l_image->y1 - l_cp->ty0),
|
|
- (OPJ_INT32)l_cp->tdy);
|
|
+ l_cp->tw = opj_uint_ceildiv(l_image->x1 - l_cp->tx0, l_cp->tdx);
|
|
+ l_cp->th = opj_uint_ceildiv(l_image->y1 - l_cp->ty0, l_cp->tdy);
|
|
|
|
/* Check that the number of tiles is valid */
|
|
if (l_cp->tw == 0 || l_cp->th == 0 || l_cp->tw > 65535 / l_cp->th) {
|
|
@@ -2331,12 +2329,10 @@ static OPJ_BOOL opj_j2k_read_siz(opj_j2k_t *p_j2k,
|
|
(p_j2k->m_specific_param.m_decoder.m_start_tile_x - l_cp->tx0) / l_cp->tdx;
|
|
p_j2k->m_specific_param.m_decoder.m_start_tile_y =
|
|
(p_j2k->m_specific_param.m_decoder.m_start_tile_y - l_cp->ty0) / l_cp->tdy;
|
|
- p_j2k->m_specific_param.m_decoder.m_end_tile_x = (OPJ_UINT32)opj_int_ceildiv((
|
|
- OPJ_INT32)(p_j2k->m_specific_param.m_decoder.m_end_tile_x - l_cp->tx0),
|
|
- (OPJ_INT32)l_cp->tdx);
|
|
- p_j2k->m_specific_param.m_decoder.m_end_tile_y = (OPJ_UINT32)opj_int_ceildiv((
|
|
- OPJ_INT32)(p_j2k->m_specific_param.m_decoder.m_end_tile_y - l_cp->ty0),
|
|
- (OPJ_INT32)l_cp->tdy);
|
|
+ p_j2k->m_specific_param.m_decoder.m_end_tile_x = opj_uint_ceildiv(
|
|
+ p_j2k->m_specific_param.m_decoder.m_end_tile_x - l_cp->tx0, l_cp->tdx);
|
|
+ p_j2k->m_specific_param.m_decoder.m_end_tile_y = opj_uint_ceildiv(
|
|
+ p_j2k->m_specific_param.m_decoder.m_end_tile_y - l_cp->ty0, l_cp->tdy);
|
|
} else {
|
|
p_j2k->m_specific_param.m_decoder.m_start_tile_x = 0;
|
|
p_j2k->m_specific_param.m_decoder.m_start_tile_y = 0;
|
|
@@ -6922,10 +6918,8 @@ OPJ_BOOL opj_j2k_setup_encoder(opj_j2k_t *p_j2k,
|
|
*/
|
|
|
|
if (parameters->tile_size_on) {
|
|
- cp->tw = (OPJ_UINT32)opj_int_ceildiv((OPJ_INT32)(image->x1 - cp->tx0),
|
|
- (OPJ_INT32)cp->tdx);
|
|
- cp->th = (OPJ_UINT32)opj_int_ceildiv((OPJ_INT32)(image->y1 - cp->ty0),
|
|
- (OPJ_INT32)cp->tdy);
|
|
+ cp->tw = opj_uint_ceildiv(image->x1 - cp->tx0, cp->tdx);
|
|
+ cp->th = opj_uint_ceildiv(image->y1 - cp->ty0, cp->tdy);
|
|
} else {
|
|
cp->tdx = image->x1 - cp->tx0;
|
|
cp->tdy = image->y1 - cp->ty0;
|
|
@@ -9237,10 +9231,8 @@ OPJ_BOOL opj_j2k_set_decode_area(opj_j2k_t *p_j2k,
|
|
for (it_comp = 0; it_comp < p_image->numcomps; ++it_comp) {
|
|
OPJ_INT32 l_h, l_w;
|
|
|
|
- l_img_comp->x0 = (OPJ_UINT32)opj_int_ceildiv((OPJ_INT32)p_image->x0,
|
|
- (OPJ_INT32)l_img_comp->dx);
|
|
- l_img_comp->y0 = (OPJ_UINT32)opj_int_ceildiv((OPJ_INT32)p_image->y0,
|
|
- (OPJ_INT32)l_img_comp->dy);
|
|
+ l_img_comp->x0 = opj_uint_ceildiv(p_image->x0, l_img_comp->dx);
|
|
+ l_img_comp->y0 = opj_uint_ceildiv(p_image->y0, l_img_comp->dy);
|
|
l_comp_x1 = opj_int_ceildiv((OPJ_INT32)p_image->x1, (OPJ_INT32)l_img_comp->dx);
|
|
l_comp_y1 = opj_int_ceildiv((OPJ_INT32)p_image->y1, (OPJ_INT32)l_img_comp->dy);
|
|
|
|
@@ -10848,10 +10840,8 @@ OPJ_BOOL opj_j2k_get_tile(opj_j2k_t *p_j2k,
|
|
|
|
l_img_comp->factor = p_j2k->m_private_image->comps[compno].factor;
|
|
|
|
- l_img_comp->x0 = (OPJ_UINT32)opj_int_ceildiv((OPJ_INT32)p_image->x0,
|
|
- (OPJ_INT32)l_img_comp->dx);
|
|
- l_img_comp->y0 = (OPJ_UINT32)opj_int_ceildiv((OPJ_INT32)p_image->y0,
|
|
- (OPJ_INT32)l_img_comp->dy);
|
|
+ l_img_comp->x0 = opj_uint_ceildiv(p_image->x0, l_img_comp->dx);
|
|
+ l_img_comp->y0 = opj_uint_ceildiv(p_image->y0, l_img_comp->dy);
|
|
l_comp_x1 = opj_int_ceildiv((OPJ_INT32)p_image->x1, (OPJ_INT32)l_img_comp->dx);
|
|
l_comp_y1 = opj_int_ceildiv((OPJ_INT32)p_image->y1, (OPJ_INT32)l_img_comp->dy);
|
|
|
|
@@ -11161,10 +11151,8 @@ static void opj_get_tile_dimensions(opj_image_t * l_image,
|
|
|
|
*l_width = (OPJ_UINT32)(l_tilec->x1 - l_tilec->x0);
|
|
*l_height = (OPJ_UINT32)(l_tilec->y1 - l_tilec->y0);
|
|
- *l_offset_x = (OPJ_UINT32)opj_int_ceildiv((OPJ_INT32)l_image->x0,
|
|
- (OPJ_INT32)l_img_comp->dx);
|
|
- *l_offset_y = (OPJ_UINT32)opj_int_ceildiv((OPJ_INT32)l_image->y0,
|
|
- (OPJ_INT32)l_img_comp->dy);
|
|
+ *l_offset_x = opj_uint_ceildiv(l_image->x0, l_img_comp->dx);
|
|
+ *l_offset_y = opj_uint_ceildiv(l_image->y0, l_img_comp->dy);
|
|
*l_image_width = (OPJ_UINT32)opj_int_ceildiv((OPJ_INT32)l_image->x1 -
|
|
(OPJ_INT32)l_image->x0, (OPJ_INT32)l_img_comp->dx);
|
|
*l_stride = *l_image_width - *l_width;
|