]> git.sesse.net Git - ffmpeg/commitdiff
avcodec/ljpegenc: Don't free buffer known to be NULL
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
Tue, 15 Sep 2020 00:09:42 +0000 (02:09 +0200)
committerAndreas Rheinhardt <andreas.rheinhardt@gmail.com>
Sat, 19 Sep 2020 16:47:54 +0000 (18:47 +0200)
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>
libavcodec/ljpegenc.c

index 70eff9e6fecfcbb91d74d60f28a30d60faf64584..39ce5a0089072a765cf1fb7999b2e4109f71c482 100644 (file)
@@ -309,7 +309,7 @@ FF_ENABLE_DEPRECATION_WARNINGS
 
     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,
@@ -327,9 +327,6 @@ FF_ENABLE_DEPRECATION_WARNINGS
                                  avpriv_mjpeg_val_dc);
 
     return 0;
-fail:
-    ljpeg_encode_close(avctx);
-    return AVERROR(ENOMEM);
 }
 
 #define OFFSET(x) offsetof(LJpegEncContext, x)