ffmpeg | branch: master | Derek Buitenhuis <derek.buitenh...@gmail.com> | Mon Apr 11 15:01:33 2016 +0100| [015ca20030be077c4bc084244e3fc267e1b72e52] | committer: Derek Buitenhuis
Merge commit 'f91d94bdfc3f5f83ff0be4d19d10d0a35697386f' * commit 'f91d94bdfc3f5f83ff0be4d19d10d0a35697386f': vc1dec: Properly call deinit function on error Merged-by: Derek Buitenhuis <derek.buitenh...@gmail.com> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=015ca20030be077c4bc084244e3fc267e1b72e52 --- libavcodec/vc1dec.c | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/libavcodec/vc1dec.c b/libavcodec/vc1dec.c index 9c49f6a..4d83967 100644 --- a/libavcodec/vc1dec.c +++ b/libavcodec/vc1dec.c @@ -373,20 +373,14 @@ av_cold int ff_vc1_decode_init_alloc_tables(VC1Context *v) if (!v->mv_type_mb_plane || !v->direct_mb_plane || !v->acpred_plane || !v->over_flags_plane || !v->block || !v->cbp_base || !v->ttblk_base || !v->is_intra_base || !v->luma_mv_base || !v->mb_type_base) { - av_freep(&v->mv_type_mb_plane); - av_freep(&v->direct_mb_plane); - av_freep(&v->acpred_plane); - av_freep(&v->over_flags_plane); - av_freep(&v->block); - av_freep(&v->cbp_base); - av_freep(&v->ttblk_base); - av_freep(&v->is_intra_base); - av_freep(&v->luma_mv_base); - av_freep(&v->mb_type_base); - return AVERROR(ENOMEM); + goto error; } return 0; + +error: + ff_vc1_decode_end(s->avctx); + return AVERROR(ENOMEM); } av_cold void ff_vc1_init_transposed_scantables(VC1Context *v) ====================================================================== _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog