summaryrefslogtreecommitdiff
path: root/libavcodec/truemotion1.c
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-08-29 09:39:40 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-08-30 03:07:33 +0200
commit9372eb00c8a1d4f2f1a356609bdcec207063baf5 (patch)
treedf0998cff2140cd34ac521e791b6fb967c4937ed /libavcodec/truemotion1.c
parentc767af97f83d4277ec075ba9e39e5ea65db30074 (diff)
avcodec/truemotion1: Cleanup generically after init failure
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Diffstat (limited to 'libavcodec/truemotion1.c')
-rw-r--r--libavcodec/truemotion1.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/libavcodec/truemotion1.c b/libavcodec/truemotion1.c
index b6481cbd7c..94782fef4b 100644
--- a/libavcodec/truemotion1.c
+++ b/libavcodec/truemotion1.c
@@ -491,10 +491,8 @@ static av_cold int truemotion1_decode_init(AVCodecContext *avctx)
/* there is a vertical predictor for each pixel in a line; each vertical
* predictor is 0 to start with */
av_fast_malloc(&s->vert_pred, &s->vert_pred_size, s->avctx->width * sizeof(unsigned int));
- if (!s->vert_pred) {
- av_frame_free(&s->frame);
+ if (!s->vert_pred)
return AVERROR(ENOMEM);
- }
return 0;
}
@@ -922,4 +920,5 @@ AVCodec ff_truemotion1_decoder = {
.close = truemotion1_decode_end,
.decode = truemotion1_decode_frame,
.capabilities = AV_CODEC_CAP_DR1,
+ .caps_internal = FF_CODEC_CAP_INIT_CLEANUP,
};