diff options
author | Michael Niedermayer <michael@niedermayer.cc> | 2016-03-02 14:09:23 +0100 |
---|---|---|
committer | Michael Niedermayer <michael@niedermayer.cc> | 2016-03-26 21:52:47 +0100 |
commit | b4be953c559699986c63c68e2c2e9e927201d4c2 (patch) | |
tree | ee07516ab83192e4b05a94bcf2e246794b50de2e /libavformat | |
parent | 3b179b630253466b325b44fd6355a4c8d3548b62 (diff) | |
download | ffmpeg-b4be953c559699986c63c68e2c2e9e927201d4c2.tar.gz |
avformat/cache: Fix memleak of tree entries
Found-by: jamrial
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit 554f6e930ce05a4c5449efcaae36bdafe2d9de74)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavformat')
-rw-r--r-- | libavformat/cache.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/libavformat/cache.c b/libavformat/cache.c index 8e8b9e8412..8aed37eb2d 100644 --- a/libavformat/cache.c +++ b/libavformat/cache.c @@ -283,6 +283,12 @@ resolve_eof: return ret; } +static int enu_free(void *opaque, void *elem) +{ + av_free(elem); + return 0; +} + static int cache_close(URLContext *h) { Context *c= h->priv_data; @@ -292,6 +298,7 @@ static int cache_close(URLContext *h) close(c->fd); ffurl_close(c->inner); + av_tree_enumerate(c->root, NULL, NULL, enu_free); av_tree_destroy(c->root); return 0; |