aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2016-05-11 00:00:52 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2016-08-15 18:54:34 +0200
commitfc6f314838dc2f192bd42d6bcf67aa9d5280908f (patch)
treeb247e7a37e4c04bc98419f43b07d50dfb8453a24
parent3bbef6082aee8effda8e3ed9c8083739e752b7e4 (diff)
downloadffmpeg-fc6f314838dc2f192bd42d6bcf67aa9d5280908f.tar.gz
avformat/utils: Check bps before using it in a shift in ff_get_pcm_codec_id()
Fixes undefined shift Fixes: usan_shift Found-by: Thomas Guilbert <tguilbert@google.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit ea791c080dd5494b3bee0c618a3f52e371b5f320) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavformat/utils.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libavformat/utils.c b/libavformat/utils.c
index 5ee4436c71..d40ae64411 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -2785,6 +2785,9 @@ enum AVCodecID ff_codec_get_id(const AVCodecTag *tags, unsigned int tag)
enum AVCodecID ff_get_pcm_codec_id(int bps, int flt, int be, int sflags)
{
+ if (bps > 64U)
+ return AV_CODEC_ID_NONE;
+
if (flt) {
switch (bps) {
case 32: