aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec/wmadec.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-02-19 01:36:23 +0100
committerMichael Niedermayer <michaelni@gmx.at>2012-02-19 01:47:10 +0100
commit4a519b6e036bb593d868c2a424da43512215c571 (patch)
treebbbd734383e7b2bfd005a1c19fe64d36d493b576 /libavcodec/wmadec.c
parent57182b9f0fa15ebedbf5229e17bc77a70cc68d9d (diff)
parent5be805d38cb43e6f0b85941f75946d09bc8cc13f (diff)
downloadffmpeg-4a519b6e036bb593d868c2a424da43512215c571.tar.gz
Merge remote-tracking branch 'qatar/master'
* qatar/master: mov: Use defines for sample flags in fragments mov: Use defines for trun flags mov: Use defines for tfhd flags proresenc: force bitrate not to exceed given limit vc1parse: call vc1_init_common(). wma: don't return 0 on invalid packets. asf: prevent packet_size_left from going negative if hdrlen > pktlen. mjpegb: don't return 0 at the end of frame decoding. rtpdec: Identify incorrectly signalled H263 vp8dsp: split long line. aiff: don't skip block_align==0 check on COMM-after-SSND files. dpcm: ignore extra unpaired bytes in stereo streams. mp3on4: require a minimum framesize. mpc7: assign an error level + context to av_log() msg. huffyuv: error out on bit overrun. dct-test: Add the missing ff_ prefix to the altivec functions dct-test: Remove a stray declaration of a nonexistent function movenc: Write the unknown duration as 64 bit fields in ismv movenc: Write track durations with all bits set if duration is unknown Conflicts: libavcodec/dct-test.c libavcodec/wmadec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
Diffstat (limited to 'libavcodec/wmadec.c')
-rw-r--r--libavcodec/wmadec.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/libavcodec/wmadec.c b/libavcodec/wmadec.c
index 7d7cc7f7bf..c90e22ca8e 100644
--- a/libavcodec/wmadec.c
+++ b/libavcodec/wmadec.c
@@ -834,8 +834,12 @@ static int wma_decode_superframe(AVCodecContext *avctx, void *data,
s->last_superframe_len = 0;
return 0;
}
- if (buf_size < s->block_align)
- return AVERROR(EINVAL);
+ if (buf_size < s->block_align) {
+ av_log(avctx, AV_LOG_ERROR,
+ "Input packet size too small (%d < %d)\n",
+ buf_size, s->block_align);
+ return AVERROR_INVALIDDATA;
+ }
if(s->block_align)
buf_size = s->block_align;