check std tag size before reading.

Fixes out of array read

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
pull/8/head
Michael Niedermayer 12 years ago
parent a7ee6281f7
commit b90e795f73
  1. 4
      libavformat/4xm.c

@ -134,6 +134,10 @@ static int fourxm_read_header(AVFormatContext *s)
}
if (fourcc_tag == std__TAG) {
if (header_size < i + 16) {
av_log(s, AV_LOG_ERROR, "std TAG truncated\n");
return AVERROR_INVALIDDATA;
}
fourxm->fps = av_int2float(AV_RL32(&header[i + 12]));
} else if (fourcc_tag == vtrk_TAG) {
/* check that there is enough data */

Loading…
Cancel
Save