The lossless JPEG encoder allocates one buffer in its init function
and freeing said buffer is the only thing done in its close function.
Despite this the init function called the close function if allocating
said buffer fails, although there is nothing to free in this case.
This commit stops doing this.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
s->scratch = av_malloc_array(avctx->width + 1, sizeof(*s->scratch));
if (!s->scratch)
- goto fail;
+ return AVERROR(ENOMEM);
ff_idctdsp_init(&s->idsp, avctx);
ff_init_scantable(s->idsp.idct_permutation, &s->scantable,
avpriv_mjpeg_val_dc);
return 0;
-fail:
- ljpeg_encode_close(avctx);
- return AVERROR(ENOMEM);
}
#define OFFSET(x) offsetof(LJpegEncContext, x)