From: Michael Niedermayer Date: Fri, 27 Nov 2015 22:33:03 +0000 (+0100) Subject: avcodec/hevc: allocate entries unconditionally X-Git-Tag: n3.1-dev~1378 X-Git-Url: http://git.ffmpeg.org/gitweb/ffmpeg.git/commitdiff_plain/d85aa76115214183e7e3b7d65e950da61474959a avcodec/hevc: allocate entries unconditionally Fixes out of array access Fixes: 08664a2a7921ef48172f26495c7455be/asan_heap-oob_23036c6_3301_523388ef84285a0270caf67a43247b59.bit Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer --- diff --git a/libavcodec/hevc.c b/libavcodec/hevc.c index e9f27a4..6edfcdf 100644 --- a/libavcodec/hevc.c +++ b/libavcodec/hevc.c @@ -2452,11 +2452,9 @@ static int hls_slice_data_wpp(HEVCContext *s, const HEVCNAL *nal) return AVERROR(ENOMEM); } + ff_alloc_entries(s->avctx, s->sh.num_entry_point_offsets + 1); if (!s->sList[1]) { - ff_alloc_entries(s->avctx, s->sh.num_entry_point_offsets + 1); - - for (i = 1; i < s->threads_number; i++) { s->sList[i] = av_malloc(sizeof(HEVCContext)); memcpy(s->sList[i], s, sizeof(HEVCContext));