Commit a450ec26 authored by Andrew Stone's avatar Andrew Stone Committed by Michael Niedermayer

avcodec/libvorbisdec: Fix memory leak

Signed-off-by: 's avatarMichael Niedermayer <michael@niedermayer.cc>
parent 14355873
......@@ -32,6 +32,8 @@ typedef struct OggVorbisDecContext {
ogg_packet op; /**< ogg packet */
} OggVorbisDecContext;
static int oggvorbis_decode_close(AVCodecContext *avccontext);
static int oggvorbis_decode_init(AVCodecContext *avccontext) {
OggVorbisDecContext *context = avccontext->priv_data ;
uint8_t *p= avccontext->extradata;
......@@ -110,8 +112,7 @@ static int oggvorbis_decode_init(AVCodecContext *avccontext) {
return 0 ;
error:
vorbis_info_clear(&context->vi);
vorbis_comment_clear(&context->vc) ;
oggvorbis_decode_close(avccontext);
return ret;
}
......@@ -187,6 +188,8 @@ static int oggvorbis_decode_frame(AVCodecContext *avccontext, void *data,
static int oggvorbis_decode_close(AVCodecContext *avccontext) {
OggVorbisDecContext *context = avccontext->priv_data ;
vorbis_block_clear(&context->vb);
vorbis_dsp_clear(&context->vd);
vorbis_info_clear(&context->vi) ;
vorbis_comment_clear(&context->vc) ;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment