epafdec: prevent overflow during block alignment calculation

Reviewed-by: Michael Niedermayer <michael@niedermayer.cc>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
pull/249/head
Andreas Cadhalpun 8 years ago
parent 5b0ae88ca6
commit 74bd17d316
  1. 3
      libavformat/epafdec.c

@ -20,6 +20,7 @@
*/
#include "libavutil/intreadwrite.h"
#include "libavcodec/internal.h"
#include "avformat.h"
#include "internal.h"
#include "pcm.h"
@ -59,7 +60,7 @@ static int epaf_read_header(AVFormatContext *s)
channels = avio_rb32(s->pb);
}
if (!channels || !sample_rate)
if (channels <= 0 || channels > FF_SANE_NB_CHANNELS || sample_rate <= 0)
return AVERROR_INVALIDDATA;
st = avformat_new_stream(s, NULL);

Loading…
Cancel
Save