Browse Source

avformat/astdec: sanity check channels & sample rate

Fixes probetest failure

Reviewed-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
tags/n2.2-rc1
Michael Niedermayer 12 years ago
parent
commit
cbe84b4ffa
1 changed files with 9 additions and 6 deletions
  1. +9
    -6
      libavformat/astdec.c

+ 9
- 6
libavformat/astdec.c View File

@@ -27,12 +27,15 @@

static int ast_probe(AVProbeData *p)
{
if (AV_RL32(p->buf) == MKTAG('S','T','R','M') &&
AV_RB16(p->buf + 10) &&
AV_RB16(p->buf + 12) &&
AV_RB32(p->buf + 16))
return AVPROBE_SCORE_MAX / 3 * 2;
return 0;
if (AV_RL32(p->buf) != MKTAG('S','T','R','M'))
return 0;

if (!AV_RB16(p->buf + 10) ||
!AV_RB16(p->buf + 12) || AV_RB16(p->buf + 12) > 256 ||
!AV_RB32(p->buf + 16) || AV_RB32(p->buf + 16) > 8*48000)
return 1;

return AVPROBE_SCORE_MAX / 3 * 2;
}

static int ast_read_header(AVFormatContext *s)


Loading…
Cancel
Save