cid: 1396268
when av_strdup(str) error, the lst need release

Signed-off-by: Steven Liu <l...@chinaffmpeg.org>
---
 libavcodec/bsf.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/libavcodec/bsf.c b/libavcodec/bsf.c
index ac2024b..c984526 100644
--- a/libavcodec/bsf.c
+++ b/libavcodec/bsf.c
@@ -514,8 +514,10 @@ int av_bsf_list_parse_str(const char *str, AVBSFContext 
**bsf_lst)
     if (!lst)
         return AVERROR(ENOMEM);
 
-    if (!(dup = buf = av_strdup(str)))
-        return AVERROR(ENOMEM);
+    if (!(dup = buf = av_strdup(str))) {
+        ret = AVERROR(ENOMEM);
+        goto end;
+    }
 
     while (1) {
         bsf_str = av_strtok(buf, ",", &saveptr);
-- 
2.10.1.382.ga23ca1b.dirty



_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel

Reply via email to