# HG changeset patch # User cehoyos # Date 1264416392 0 # Node ID bc62e28267826e716ef551cb9be099b39b482a7b # Parent 1c3b1752d6d64aa35a04ddf090607eae9a92921a Release buffer when decoding is finished. diff -r 1c3b1752d6d6 -r bc62e2826782 vcr1.c --- a/vcr1.c Mon Jan 25 02:44:34 2010 +0000 +++ b/vcr1.c Mon Jan 25 10:46:32 2010 +0000 @@ -158,6 +158,15 @@ return 0; } +static av_cold int decode_end(AVCodecContext *avctx){ + VCR1Context *s = avctx->priv_data; + + if (s->picture.data[0]) + avctx->release_buffer(avctx, &s->picture); + + return 0; +} + #if CONFIG_VCR1_ENCODER static av_cold int encode_init(AVCodecContext *avctx){ @@ -174,7 +183,7 @@ sizeof(VCR1Context), decode_init, NULL, - NULL, + decode_end, decode_frame, CODEC_CAP_DR1, .long_name = NULL_IF_CONFIG_SMALL("ATI VCR1"),