--- openjpeg-master-2016-04-13/src/lib/openjp2/cidx_manager.c.orig 2016-04-13 15:56:44.000000000 +0200 +++ openjpeg-master-2016-04-13/src/lib/openjp2/cidx_manager.c 2016-04-13 21:49:19.585579338 +0200 @@ -60,7 +60,9 @@ lenp = -1; box = (opj_jp2_box_t *)opj_calloc( 32, sizeof(opj_jp2_box_t)); - + if(box == NULL){ + return 0; + } for (i=0;i<2;i++){ if(i) --- openjpeg-master-2016-04-13/src/lib/openjp2/ppix_manager.c.orig 2016-04-13 15:56:44.000000000 +0200 +++ openjpeg-master-2016-04-13/src/lib/openjp2/ppix_manager.c 2016-04-13 21:49:19.585579338 +0200 @@ -61,7 +61,9 @@ lenp = -1; box = (opj_jp2_box_t *)opj_calloc( (size_t)cstr_info.numcomps, sizeof(opj_jp2_box_t)); - + if(box == NULL){ + return 0; + } for (i=0;i<2;i++){ if (i) --- openjpeg-master-2016-04-13/src/lib/openjp2/thix_manager.c.orig 2016-04-13 15:56:44.000000000 +0200 +++ openjpeg-master-2016-04-13/src/lib/openjp2/thix_manager.c 2016-04-13 21:49:19.586579338 +0200 @@ -49,7 +49,9 @@ lenp = 0; box = (opj_jp2_box_t *)opj_calloc( (size_t)(cstr_info.tw*cstr_info.th), sizeof(opj_jp2_box_t)); - + if(box == NULL){ + return 0; + } for ( i = 0; i < 2 ; i++ ){ if (i) opj_stream_seek( cio, lenp, p_manager); --- openjpeg-master-2016-04-13/src/lib/openjp2/j2k.c.orig 2016-04-13 15:56:44.000000000 +0200 +++ openjpeg-master-2016-04-13/src/lib/openjp2/j2k.c 2016-04-13 21:49:19.588579338 +0200 @@ -2094,7 +2094,7 @@ opj_event_msg(p_manager, EVT_ERROR, "JPWL: bad image size (%d x %d)\n", l_image->x1, l_image->y1); - if (!JPWL_ASSUME || JPWL_ASSUME) { + if (!JPWL_ASSUME) { opj_event_msg(p_manager, EVT_ERROR, "JPWL: giving up\n"); return OPJ_FALSE; } @@ -2270,7 +2270,7 @@ if (!l_cp->tcps) { opj_event_msg(p_manager, JPWL_ASSUME ? EVT_WARNING : EVT_ERROR, "JPWL: could not alloc tcps field of cp\n"); - if (!JPWL_ASSUME || JPWL_ASSUME) { + if (!JPWL_ASSUME) { opj_event_msg(p_manager, EVT_ERROR, "JPWL: giving up\n"); return OPJ_FALSE; } @@ -2578,6 +2578,9 @@ p_j2k->cstr_info->prog = l_tcp->prg; p_j2k->cstr_info->numlayers = l_tcp->numlayers; p_j2k->cstr_info->numdecompos = (OPJ_INT32*) opj_malloc(l_image->numcomps * sizeof(OPJ_UINT32)); + if(!p_j2k->cstr_info->numdecompos){ + return OPJ_FALSE; + } for (i = 0; i < l_image->numcomps; ++i) { p_j2k->cstr_info->numdecompos[i] = l_tcp->tccps[i].numresolutions - 1; } @@ -4621,7 +4624,7 @@ opj_event_msg(p_manager, EVT_ERROR, "JPWL: bad component number in RGN (%d when there are only %d)\n", l_comp_room, l_nb_comp); - if (!JPWL_ASSUME || JPWL_ASSUME) { + if (!JPWL_ASSUME) { opj_event_msg(p_manager, EVT_ERROR, "JPWL: giving up\n"); return OPJ_FALSE; } --- openjpeg-master-2016-04-13/src/lib/openjp2/phix_manager.c.orig 2016-04-13 15:56:44.000000000 +0200 +++ openjpeg-master-2016-04-13/src/lib/openjp2/phix_manager.c 2016-04-13 21:49:19.588579338 +0200 @@ -57,7 +57,9 @@ OPJ_OFF_T lenp = 0; box = (opj_jp2_box_t *)opj_calloc( (size_t)cstr_info.numcomps, sizeof(opj_jp2_box_t)); - + if(box == NULL){ + return 0; + } for( i=0;i<2;i++){ if (i) opj_stream_seek( cio, lenp, p_manager); --- openjpeg-master-2016-04-13/src/lib/openjp2/t1.c.orig 2016-04-13 15:56:44.000000000 +0200 +++ openjpeg-master-2016-04-13/src/lib/openjp2/t1.c 2016-04-13 21:49:19.588579338 +0200 @@ -381,7 +381,7 @@ flag = vsc ? (OPJ_UINT32)((*flagsp) & (~(T1_SIG_S | T1_SIG_SE | T1_SIG_SW | T1_SGN_S))) : (OPJ_UINT32)(*flagsp); if ((flag & T1_SIG_OTH) && !(flag & (T1_SIG | T1_VISIT))) { - v = opj_int_abs(*datap) & one ? 1 : 0; + v = (opj_int_abs(*datap) & one) ? 1 : 0; opj_mqc_setcurctx(mqc, opj_t1_getctxno_zc(flag, orient)); /* ESSAI */ if (type == T1_TYPE_RAW) { /* BYPASS/LAZY MODE */ opj_mqc_bypass_enc(mqc, (OPJ_UINT32)v); @@ -625,7 +625,7 @@ flag = vsc ? (OPJ_UINT32)((*flagsp) & (~(T1_SIG_S | T1_SIG_SE | T1_SIG_SW | T1_SGN_S))) : (OPJ_UINT32)(*flagsp); if ((flag & (T1_SIG | T1_VISIT)) == T1_SIG) { *nmsedec += opj_t1_getnmsedec_ref((OPJ_UINT32)opj_int_abs(*datap), (OPJ_UINT32)(bpno)); - v = opj_int_abs(*datap) & one ? 1 : 0; + v = (opj_int_abs(*datap) & one) ? 1 : 0; opj_mqc_setcurctx(mqc, opj_t1_getctxno_mag(flag)); /* ESSAI */ if (type == T1_TYPE_RAW) { /* BYPASS/LAZY MODE */ opj_mqc_bypass_enc(mqc, (OPJ_UINT32)v); @@ -849,7 +849,7 @@ } if (!(*flagsp & (T1_SIG | T1_VISIT))) { opj_mqc_setcurctx(mqc, opj_t1_getctxno_zc(flag, orient)); - v = opj_int_abs(*datap) & one ? 1 : 0; + v = (opj_int_abs(*datap) & one) ? 1 : 0; opj_mqc_encode(mqc, (OPJ_UINT32)v); if (v) { LABEL_PARTIAL: --- openjpeg-master-2016-04-13/src/lib/openjp2/jp2.c.orig 2016-04-13 15:56:44.000000000 +0200 +++ openjpeg-master-2016-04-13/src/lib/openjp2/jp2.c 2016-04-13 21:49:19.589579338 +0200 @@ -646,12 +646,13 @@ { OPJ_UINT32 i; /* room for 8 bytes for box and 1 byte for each component */ - OPJ_UINT32 l_bpcc_size = 8 + jp2->numcomps; + OPJ_UINT32 l_bpcc_size; OPJ_BYTE * l_bpcc_data,* l_current_bpcc_ptr; /* preconditions */ assert(jp2 != 00); assert(p_nb_bytes_written != 00); + l_bpcc_size = 8 + jp2->numcomps; l_bpcc_data = (OPJ_BYTE *) opj_calloc(1,l_bpcc_size); if (l_bpcc_data == 00) { @@ -1404,6 +1405,10 @@ OPJ_UINT32 rl, ol, ra, oa, rb, ob, il; cielab = (OPJ_UINT32*)opj_malloc(9 * sizeof(OPJ_UINT32)); + if(cielab == NULL){ + opj_event_msg(p_manager, EVT_ERROR, "Not enough memory for cielab\n"); + return OPJ_FALSE; + } cielab[0] = 14; /* enumcs */ /* default values */ @@ -1639,7 +1644,7 @@ opj_event_mgr_t * p_manager ) { OPJ_UINT32 i; - OPJ_UINT32 l_ftyp_size = 16 + 4 * jp2->numcl; + OPJ_UINT32 l_ftyp_size; OPJ_BYTE * l_ftyp_data, * l_current_data_ptr; OPJ_BOOL l_result; @@ -1647,6 +1652,7 @@ assert(cio != 00); assert(jp2 != 00); assert(p_manager != 00); + l_ftyp_size = 16 + 4 * jp2->numcl; l_ftyp_data = (OPJ_BYTE *) opj_calloc(1,l_ftyp_size);