@@ -50,11 +50,8 @@ static av_cold int cmv_decode_init(AVCodecContext *avctx){
s->last_frame = av_frame_alloc();
s->last2_frame = av_frame_alloc();
- if (!s->last_frame || !s->last2_frame) {
- av_frame_free(&s->last_frame);
- av_frame_free(&s->last2_frame);
+ if (!s->last_frame || !s->last2_frame)
return AVERROR(ENOMEM);
- }
return 0;
}
@@ -243,4 +240,5 @@ AVCodec ff_eacmv_decoder = {
.close = cmv_decode_end,
.decode = cmv_decode_frame,
.capabilities = AV_CODEC_CAP_DR1,
+ .caps_internal = FF_CODEC_CAP_INIT_CLEANUP,
};
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> --- libavcodec/eacmv.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-)