[FFmpeg-cvslog] lavc/vorbisdec: Allow avcodec_open2 to call .close

Matt Wolenetz git at videolan.org
Wed Mar 7 21:37:56 EET 2018


ffmpeg | branch: master | Matt Wolenetz <wolenetz at chromium.org> | Mon Mar  5 15:59:18 2018 -0800| [b59b59944693e645cdcf5e61b60f288820fe48c3] | committer: Michael Niedermayer

lavc/vorbisdec: Allow avcodec_open2 to call .close

If there is a decoder initialization failure detected in avcodec_open2
after .init is called, allow graceful decoder .close to prevent leaking
vorbis decoder allocations such as those from vorbis_parse_setup_*.

BUG=772699

Signed-off-by: Michael Niedermayer <michael at niedermayer.cc>

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

 libavcodec/vorbisdec.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/libavcodec/vorbisdec.c b/libavcodec/vorbisdec.c
index 2a4f482031..00e9cd8a13 100644
--- a/libavcodec/vorbisdec.c
+++ b/libavcodec/vorbisdec.c
@@ -1862,6 +1862,7 @@ AVCodec ff_vorbis_decoder = {
     .decode          = vorbis_decode_frame,
     .flush           = vorbis_decode_flush,
     .capabilities    = AV_CODEC_CAP_DR1,
+    .caps_internal   = FF_CODEC_CAP_INIT_CLEANUP,
     .channel_layouts = ff_vorbis_channel_layouts,
     .sample_fmts     = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_FLTP,
                                                        AV_SAMPLE_FMT_NONE },



More information about the ffmpeg-cvslog mailing list