Browse Source

libavcodec/utils: Free threads on init failure

Fixes: Multiple memleaks
Fixes: ffmpeg-memory-leak

Found-by: Francis Provencher <francis@protekresearchlab.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
tags/n4.3
Michael Niedermayer 6 years ago
parent
commit
61b055bed0
1 changed files with 3 additions and 0 deletions
  1. +3
    -0
      libavcodec/utils.c

+ 3
- 0
libavcodec/utils.c View File

@@ -1029,6 +1029,9 @@ free_and_end:
(avctx->codec->caps_internal & FF_CODEC_CAP_INIT_CLEANUP))) (avctx->codec->caps_internal & FF_CODEC_CAP_INIT_CLEANUP)))
avctx->codec->close(avctx); avctx->codec->close(avctx);


if (HAVE_THREADS && avctx->internal->thread_ctx)
ff_thread_free(avctx);

if (codec->priv_class && codec->priv_data_size) if (codec->priv_class && codec->priv_data_size)
av_opt_free(avctx->priv_data); av_opt_free(avctx->priv_data);
av_opt_free(avctx); av_opt_free(avctx);


Loading…
Cancel
Save