mirror of https://git.ffmpeg.org/ffmpeg.git
avcodec/hdrdec: lines can be empty
Fixes: infinite loop Fixes: 49223/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_HDR_fuzzer-6603308596330496 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
636a629ff6
commit
3c43a7a354
|
@ -107,7 +107,7 @@ static int hdr_decode_frame(AVCodecContext *avctx, AVFrame *p,
|
||||||
hdr_get_line(&gb, line, sizeof(line));
|
hdr_get_line(&gb, line, sizeof(line));
|
||||||
if (sscanf(line, "PIXASPECT=%f\n", &sar) == 1)
|
if (sscanf(line, "PIXASPECT=%f\n", &sar) == 1)
|
||||||
avctx->sample_aspect_ratio = p->sample_aspect_ratio = av_inv_q(av_d2q(sar, 4096));
|
avctx->sample_aspect_ratio = p->sample_aspect_ratio = av_inv_q(av_d2q(sar, 4096));
|
||||||
} while (line[0] != '\n');
|
} while (line[0] != '\n' && line[0]);
|
||||||
|
|
||||||
hdr_get_line(&gb, line, sizeof(line));
|
hdr_get_line(&gb, line, sizeof(line));
|
||||||
if (sscanf(line, "-Y %d +X %d\n", &height, &width) == 2) {
|
if (sscanf(line, "-Y %d +X %d\n", &height, &width) == 2) {
|
||||||
|
|
Loading…
Reference in New Issue