summaryrefslogtreecommitdiff
path: root/libavcodec/avs.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavcodec/avs.c')
-rw-r--r--libavcodec/avs.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/libavcodec/avs.c b/libavcodec/avs.c
index 3ccded3f8c..b3cd5b1478 100644
--- a/libavcodec/avs.c
+++ b/libavcodec/avs.c
@@ -161,6 +161,15 @@ static av_cold int avs_decode_init(AVCodecContext * avctx)
return 0;
}
+static av_cold int avs_decode_end(AVCodecContext *avctx)
+{
+ AvsContext *s = avctx->priv_data;
+ if (s->picture.data[0])
+ avctx->release_buffer(avctx, &s->picture);
+ return 0;
+}
+
+
AVCodec ff_avs_decoder = {
.name = "avs",
.type = AVMEDIA_TYPE_VIDEO,
@@ -168,6 +177,7 @@ AVCodec ff_avs_decoder = {
.priv_data_size = sizeof(AvsContext),
.init = avs_decode_init,
.decode = avs_decode_frame,
+ .close = avs_decode_end,
.capabilities = CODEC_CAP_DR1,
.long_name = NULL_IF_CONFIG_SMALL("AVS (Audio Video Standard) video"),
};