changeset 11005:bc62e2826782 libavcodec

Release buffer when decoding is finished.
author cehoyos
date Mon, 25 Jan 2010 10:46:32 +0000
parents 1c3b1752d6d6
children d99420b73262
files vcr1.c
diffstat 1 files changed, 10 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- 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"),