From 309a931a38b42c0a635f096cdbea9c21c5e54eab Mon Sep 17 00:00:00 2001 From: Dale Curtis Date: Tue, 10 Apr 2012 11:31:03 -0700 Subject: [PATCH] Fix memory leaks on failed ff_h264_decode_init() During failure conditions ff_h264_decode_init() leaks memory allocated for nal units. Found via valgrind. Valgrind traces: http://pastebin.com/GqTqxs8T Signed-off-by: Dale Curtis Signed-off-by: Michael Niedermayer --- libavcodec/h264.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/libavcodec/h264.c b/libavcodec/h264.c index b909600b3e..2903cf9a6d 100644 --- a/libavcodec/h264.c +++ b/libavcodec/h264.c @@ -1251,8 +1251,10 @@ av_cold int ff_h264_decode_init(AVCodecContext *avctx) } if (avctx->extradata_size > 0 && avctx->extradata && - ff_h264_decode_extradata(h, avctx->extradata, avctx->extradata_size) < 0) + ff_h264_decode_extradata(h, avctx->extradata, avctx->extradata_size) < 0) { + ff_h264_free_context(h); return -1; + } if (h->sps.bitstream_restriction_flag && s->avctx->has_b_frames < h->sps.num_reorder_frames) {