mirror of https://git.ffmpeg.org/ffmpeg.git
avcodec/fits: Check bscale
Fixes: division by 0
Fixes: 26208/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_FITS_fuzzer-6270472117026816
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit c2ccd76fd0
)
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
17e941dbd4
commit
d3595579ca
|
@ -187,6 +187,8 @@ int avpriv_fits_header_parse_line(void *avcl, FITSHeader *header, const uint8_t
|
||||||
header->blank = t;
|
header->blank = t;
|
||||||
header->blank_found = 1;
|
header->blank_found = 1;
|
||||||
} else if (!strcmp(keyword, "BSCALE") && sscanf(value, "%lf", &d) == 1) {
|
} else if (!strcmp(keyword, "BSCALE") && sscanf(value, "%lf", &d) == 1) {
|
||||||
|
if (d <= 0)
|
||||||
|
return AVERROR_INVALIDDATA;
|
||||||
header->bscale = d;
|
header->bscale = d;
|
||||||
} else if (!strcmp(keyword, "BZERO") && sscanf(value, "%lf", &d) == 1) {
|
} else if (!strcmp(keyword, "BZERO") && sscanf(value, "%lf", &d) == 1) {
|
||||||
header->bzero = d;
|
header->bzero = d;
|
||||||
|
|
Loading…
Reference in New Issue