[FFmpeg-devel] [PATCH 2/3] avcodec/mjpegdec: Check initializing Huffman tables

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Sat Apr 3 17:22:26 EEST 2021


Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at outlook.com>
---
Is it actually intended that the decoder tries to use external Huffman
tables purely based on the value of the option, even when there is no
extradata at all (in which case init_get_bits() fails)?

 libavcodec/mjpegdec.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/libavcodec/mjpegdec.c b/libavcodec/mjpegdec.c
index 776797d35b..d0c933b52e 100644
--- a/libavcodec/mjpegdec.c
+++ b/libavcodec/mjpegdec.c
@@ -154,7 +154,8 @@ av_cold int ff_mjpeg_decode_init(AVCodecContext *avctx)
         if (ff_mjpeg_decode_dht(s)) {
             av_log(avctx, AV_LOG_ERROR,
                    "error using external huffman table, switching back to internal\n");
-            init_default_huffman_tables(s);
+            if ((ret = init_default_huffman_tables(s)) < 0)
+                return ret;
         }
     }
     if (avctx->field_order == AV_FIELD_BB) { /* quicktime icefloe 019 */
-- 
2.27.0



More information about the ffmpeg-devel mailing list