From: Even Rouault Date: Wed, 20 Jun 2018 12:54:09 +0000 (+0200) Subject: Avoid assertion when running opj_j2k_merge_ppt() several time due to e6674f7ed66abdb3... X-Git-Tag: v2.3.1~30^2~1 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=0c913b0aba409148b51ca43d45c50ae595449723;p=openjpeg Avoid assertion when running opj_j2k_merge_ppt() several time due to e6674f7ed66abdb32a0be5944f618722b6a7b5d5 revert. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=2785 --- diff --git a/src/lib/openjp2/j2k.c b/src/lib/openjp2/j2k.c index 5109931f..28c7513f 100644 --- a/src/lib/openjp2/j2k.c +++ b/src/lib/openjp2/j2k.c @@ -4094,7 +4094,12 @@ static OPJ_BOOL opj_j2k_merge_ppt(opj_tcp_t *p_tcp, opj_event_mgr_t * p_manager) /* preconditions */ assert(p_tcp != 00); assert(p_manager != 00); - assert(p_tcp->ppt_buffer == NULL); + + if (p_tcp->ppt_buffer != NULL) { + opj_event_msg(p_manager, EVT_ERROR, + "opj_j2k_merge_ppt() has already been called\n"); + return OPJ_FALSE; + } if (p_tcp->ppt == 0U) { return OPJ_TRUE;