diff --git a/libavformat/avio.c b/libavformat/avio.c index 05d055713f..96b18fd88e 100644 --- a/libavformat/avio.c +++ b/libavformat/avio.c @@ -412,6 +412,7 @@ int ffurl_closep(URLContext **hh) av_opt_free(h->priv_data); av_freep(&h->priv_data); } + av_opt_free(h); av_freep(hh); return ret; } diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c index b56d113e02..9851981cee 100644 --- a/libavformat/aviobuf.c +++ b/libavformat/aviobuf.c @@ -956,6 +956,7 @@ int avio_close(AVIOContext *s) av_log(s, AV_LOG_DEBUG, "Statistics: %d seeks, %d writeouts\n", s->seek_count, s->writeout_count); else av_log(s, AV_LOG_DEBUG, "Statistics: %"PRId64" bytes read, %d seeks\n", s->bytes_read, s->seek_count); + av_opt_free(s); av_free(s); return ffurl_close(h); }