[FFmpeg-devel] [PATCH v2] avcodec/libvpxenc: fix potential memory leak.
James Zern
jzern at google.com
Wed Feb 17 04:10:51 EET 2021
On Tue, Feb 16, 2021 at 2:29 PM Wonkap Jang
<wonkap-at-google.com at ffmpeg.org> wrote:
>
> While parsing ref_frame_config, AVdictionary needs to be manually
> deallocated.
> ---
> libavcodec/libvpxenc.c | 20 +++++++++++++-------
> 1 file changed, 13 insertions(+), 7 deletions(-)
>
> diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c
> index 284cb9a108..e71ae54f34 100644
> --- a/libavcodec/libvpxenc.c
> +++ b/libavcodec/libvpxenc.c
> @@ -1595,15 +1595,21 @@ static int vpx_encode(AVCodecContext *avctx, AVPacket *pkt,
> if (en) {
> if (avctx->codec_id == AV_CODEC_ID_VP9) {
> AVDictionaryEntry* en2 = NULL;
> - av_dict_parse_string(&ctx->vpx_ref_frame_config, en->value, "=", ":", 0);
> -
> - while ((en2 = av_dict_get(ctx->vpx_ref_frame_config, "", en2, AV_DICT_IGNORE_SUFFIX))) {
> - if (vpx_ref_frame_config_parse(ctx, enccfg, en2->key, en2->value, avctx->codec_id) < 0)
> - av_log(avctx, AV_LOG_WARNING,
> - "Error parsing option '%s = %s'.\n",
> - en2->key, en2->value);
> + ctx->vpx_ref_frame_config = NULL;
> + if (av_dict_parse_string(&ctx->vpx_ref_frame_config, en->value, "=", ":", 0) == 0) {
! is preferred to testing 0.
More information about the ffmpeg-devel
mailing list