avcodec/mpeg4videodec: unbreak multithreading decoding

Should fix double free related crashes.

Signed-off-by: James Almer <jamrial@gmail.com>
pull/283/head
James Almer 7 years ago
parent 2f0e0deadc
commit 2f27370111
  1. 10
      libavcodec/mpeg4videodec.c

@ -3380,11 +3380,13 @@ static av_cold int decode_end(AVCodecContext *avctx)
Mpeg4DecContext *ctx = avctx->priv_data;
int i;
for (i = 0; i < 12; i++)
ff_free_vlc(&ctx->studio_intra_tab[i]);
if (!avctx->internal->is_copy) {
for (i = 0; i < 12; i++)
ff_free_vlc(&ctx->studio_intra_tab[i]);
ff_free_vlc(&ctx->studio_luma_dc);
ff_free_vlc(&ctx->studio_chroma_dc);
ff_free_vlc(&ctx->studio_luma_dc);
ff_free_vlc(&ctx->studio_chroma_dc);
}
return ff_h263_decode_end(avctx);
}

Loading…
Cancel
Save