summaryrefslogtreecommitdiff
path: root/libavcodec/c93.c
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-09-13 22:42:26 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-09-17 00:09:07 +0200
commit8de4a132ff5cf9efa1c35c78c881dc22ba255c10 (patch)
tree508b1ac87e208a47a13fcdbfaf6762c8e32aa7f9 /libavcodec/c93.c
parent142ae27b1d4d23b72396950ebaaeaca10ba600d9 (diff)
avcodec/c93: 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/c93.c')
-rw-r--r--libavcodec/c93.c6
1 files changed, 2 insertions, 4 deletions
diff --git a/libavcodec/c93.c b/libavcodec/c93.c
index e1808150b8..7e3bfdbc72 100644
--- a/libavcodec/c93.c
+++ b/libavcodec/c93.c
@@ -63,10 +63,8 @@ static av_cold int decode_init(AVCodecContext *avctx)
s->pictures[0] = av_frame_alloc();
s->pictures[1] = av_frame_alloc();
- if (!s->pictures[0] || !s->pictures[1]) {
- decode_end(avctx);
+ if (!s->pictures[0] || !s->pictures[1])
return AVERROR(ENOMEM);
- }
return 0;
}
@@ -269,5 +267,5 @@ AVCodec ff_c93_decoder = {
.close = decode_end,
.decode = decode_frame,
.capabilities = AV_CODEC_CAP_DR1,
- .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE,
+ .caps_internal = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP,
};