[FFmpeg-cvslog] avcodec/tta: Cleanup generically on init failure

Andreas Rheinhardt git at videolan.org
Fri Feb 11 21:01:26 EET 2022


ffmpeg | branch: master | Andreas Rheinhardt <andreas.rheinhardt at outlook.com> | Tue Feb  8 11:57:29 2022 +0100| [f200424fbf78ecbbf88cce6b0b0b6c2bedd8afab] | committer: Andreas Rheinhardt

avcodec/tta: Cleanup generically on init failure

Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=f200424fbf78ecbbf88cce6b0b0b6c2bedd8afab
---

 libavcodec/tta.c | 6 ++----
 1 file changed, 2 insertions(+), 4 deletions(-)

diff --git a/libavcodec/tta.c b/libavcodec/tta.c
index 7ffae3d0ba..ef5a2b42ac 100644
--- a/libavcodec/tta.c
+++ b/libavcodec/tta.c
@@ -114,10 +114,8 @@ static int allocate_buffers(AVCodecContext *avctx)
     } else
         s->decode_buffer = NULL;
     s->ch_ctx = av_malloc_array(avctx->channels, sizeof(*s->ch_ctx));
-    if (!s->ch_ctx) {
-        av_freep(&s->decode_buffer);
+    if (!s->ch_ctx)
         return AVERROR(ENOMEM);
-    }
 
     return 0;
 }
@@ -426,5 +424,5 @@ const AVCodec ff_tta_decoder = {
     .decode         = tta_decode_frame,
     .capabilities   = AV_CODEC_CAP_DR1 | AV_CODEC_CAP_FRAME_THREADS | AV_CODEC_CAP_CHANNEL_CONF,
     .priv_class     = &tta_decoder_class,
-    .caps_internal  = FF_CODEC_CAP_INIT_THREADSAFE,
+    .caps_internal  = FF_CODEC_CAP_INIT_THREADSAFE | FF_CODEC_CAP_INIT_CLEANUP,
 };



More information about the ffmpeg-cvslog mailing list