[FFmpeg-cvslog] lavc/bsf: fix memory leak after av_dict_parse_string fail

Jun Zhao git at videolan.org
Sat Jan 4 03:07:12 EET 2020


ffmpeg | branch: master | Jun Zhao <barryjzhao at tencent.com> | Wed Jan  1 12:06:47 2020 +0800| [0099f71502b7b88ae11ea7360d0f751be8d5878e] | committer: Jun Zhao

lavc/bsf: fix memory leak after av_dict_parse_string fail

In case of failure, all the successfully set entries are stored in
*pm. We need to manually free the created dictionary to avoid
memory leak.

Reviewed-by: Michael Niedermayer <michael at niedermayer.cc>
Signed-off-by: Jun Zhao <barryjzhao at tencent.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=0099f71502b7b88ae11ea7360d0f751be8d5878e
---

 libavcodec/bsf.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/bsf.c b/libavcodec/bsf.c
index c1653cddb0..8e1af6082b 100644
--- a/libavcodec/bsf.c
+++ b/libavcodec/bsf.c
@@ -517,8 +517,8 @@ static int bsf_parse_single(const char *str, AVBSFList *bsf_lst)
 
     ret = av_bsf_list_append2(bsf_lst, bsf_name, &bsf_options);
 
-    av_dict_free(&bsf_options);
 end:
+    av_dict_free(&bsf_options);
     av_free(buf);
     return ret;
 }



More information about the ffmpeg-cvslog mailing list