ffmpeg | branch: master | Steven Liu <l...@chinaffmpeg.org> | Thu Oct 10 
10:07:49 2019 +0800| [1a109fba5499f95d3d0cc526a912f9e71446c812] | committer: 
Steven Liu

avformat/hlsenc: move freep segment from sls_flags_filename_process after 
caller failed

Signed-off-by: Steven Liu <l...@chinaffmpeg.org>

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

 libavformat/hlsenc.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c
index 7b1d54e23e..0876f72f13 100644
--- a/libavformat/hlsenc.c
+++ b/libavformat/hlsenc.c
@@ -889,7 +889,6 @@ static int sls_flags_filename_process(struct 
AVFormatContext *s, HLSContext *hls
         strlen(vs->current_segment_final_filename_fmt)) {
         char * new_url = av_strdup(vs->current_segment_final_filename_fmt);
         if (!new_url) {
-            av_freep(&en);
             return AVERROR(ENOMEM);
         }
         ff_format_set_url(vs->avf, new_url);
@@ -901,7 +900,6 @@ static int sls_flags_filename_process(struct 
AVFormatContext *s, HLSContext *hls
                        "you can try to remove second_level_segment_size 
flag\n",
                        vs->avf->url);
                 av_freep(&filename);
-                av_freep(&en);
                 return AVERROR(EINVAL);
             }
             ff_format_set_url(vs->avf, filename);
@@ -915,7 +913,6 @@ static int sls_flags_filename_process(struct 
AVFormatContext *s, HLSContext *hls
                        "you can try to remove second_level_segment_time 
flag\n",
                        vs->avf->url);
                 av_freep(&filename);
-                av_freep(&en);
                 return AVERROR(EINVAL);
             }
             ff_format_set_url(vs->avf, filename);
@@ -1037,6 +1034,7 @@ static int hls_append_segment(struct AVFormatContext *s, 
HLSContext *hls,
     en->var_stream_idx = vs->var_stream_idx;
     ret = sls_flags_filename_process(s, hls, vs, en, duration, pos, size);
     if (ret < 0) {
+        av_freep(&en);
         return ret;
     }
 

_______________________________________________
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog

To unsubscribe, visit link above, or email
ffmpeg-cvslog-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to