diff options
author | Andreas Rheinhardt <andreas.rheinhardt@gmail.com> | 2020-04-08 12:19:39 +0200 |
---|---|---|
committer | Andreas Rheinhardt <andreas.rheinhardt@gmail.com> | 2020-04-08 16:30:45 +0200 |
commit | de8f6a403350dca74a4d395a2c8b85592138cf0c (patch) | |
tree | 447fe4f5526b0656f55f776d55bf7ea4bed305fa /libavformat/hlsenc.c | |
parent | 95e9cf813e2610c0ffb39f5b276af6ea7f566315 (diff) | |
download | ffmpeg-de8f6a403350dca74a4d395a2c8b85592138cf0c.tar.gz |
avformat/hlsenc: Fix memleak when deleting old segments
if the directory name of the segments contains "%v".
This memleak is caused by masking the pointer that will eventually
be freed by a variable of the same name in a smaller scope.
Therefore the pointer that gets freed is always NULL when it is
freed and the allocated data leaks.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Diffstat (limited to 'libavformat/hlsenc.c')
-rw-r--r-- | libavformat/hlsenc.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c index b4c72b6e54..0f1f558590 100644 --- a/libavformat/hlsenc.c +++ b/libavformat/hlsenc.c @@ -532,7 +532,6 @@ static int hls_delete_old_segments(AVFormatContext *s, HLSContext *hls, /* if %v is present in the file's directory * all segment belongs to the same variant, so do it only once before the loop*/ if (dirname && av_stristr(dirname, "%v")) { - char * dirname_repl = dirname; if (!vs->varname) { if (replace_int_data_in_filename(&dirname_repl, dirname, 'v', segment->var_stream_idx) < 1) { ret = AVERROR(EINVAL); |