diff options
author | Janne Grunau <janne-libav@jannau.net> | 2012-05-14 12:23:10 +0200 |
---|---|---|
committer | Janne Grunau <janne-libav@jannau.net> | 2012-05-14 18:37:20 +0200 |
commit | 093c50a4f6402bd0481df03e43fbba1dc3630f49 (patch) | |
tree | b40e8f57cc441f99241505989311becc4836b249 /avprobe.c | |
parent | 100c70b0481b889d522b4fc2aac5b948ddb05c70 (diff) | |
download | ffmpeg-093c50a4f6402bd0481df03e43fbba1dc3630f49.tar.gz |
avprobe: close opened codecs after use
Fixes "memleak" on closing avprobe to make valgrind happy.
Diffstat (limited to 'avprobe.c')
-rw-r--r-- | avprobe.c | 16 |
1 files changed, 15 insertions, 1 deletions
@@ -352,6 +352,20 @@ static int open_input_file(AVFormatContext **fmt_ctx_ptr, const char *filename) return 0; } +static void close_input_file(AVFormatContext **ctx_ptr) +{ + int i; + AVFormatContext *fmt_ctx = *ctx_ptr; + + /* close decoder for each stream */ + for (i = 0; i < fmt_ctx->nb_streams; i++) { + AVStream *stream = fmt_ctx->streams[i]; + + avcodec_close(stream->codec); + } + avformat_close_input(ctx_ptr); +} + static int probe_file(const char *filename) { AVFormatContext *fmt_ctx; @@ -370,7 +384,7 @@ static int probe_file(const char *filename) if (do_show_format) show_format(fmt_ctx); - avformat_close_input(&fmt_ctx); + close_input_file(&fmt_ctx); return 0; } |