diff --git a/libavcodec/apedec.c b/libavcodec/apedec.c index 65c07d0f7f..0bee9d83f1 100644 --- a/libavcodec/apedec.c +++ b/libavcodec/apedec.c @@ -301,7 +301,6 @@ static av_cold int ape_decode_init(AVCodecContext *avctx) return 0; filter_alloc_fail: - ape_decode_close(avctx); return AVERROR(ENOMEM); } @@ -1638,6 +1637,7 @@ AVCodec ff_ape_decoder = { .decode = ape_decode_frame, .capabilities = AV_CODEC_CAP_SUBFRAMES | AV_CODEC_CAP_DELAY | AV_CODEC_CAP_DR1, + .caps_internal = FF_CODEC_CAP_INIT_CLEANUP, .flush = ape_flush, .sample_fmts = (const enum AVSampleFormat[]) { AV_SAMPLE_FMT_U8P, AV_SAMPLE_FMT_S16P,