aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2019-06-08 09:27:49 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2019-06-21 18:28:00 +0200
commit112eb17a2bbf6d02f81fdf0743b353a6b010aedc (patch)
treeb17a6d092a830994474592c5bef71e386a700a51
parent8e3e63e9ac1899968434c1d7d43ef439525367fd (diff)
downloadffmpeg-112eb17a2bbf6d02f81fdf0743b353a6b010aedc.tar.gz
avformat/wsddec: Fix undefined shift
Fixes: left shift of 1 by 31 places cannot be represented in type 'int' Fixes: 15123/clusterfuzz-testcase-minimized-ffmpeg_DEMUXER_fuzzer-5738039235575808 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavformat/wsddec.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavformat/wsddec.c b/libavformat/wsddec.c
index dfa8014b1c..574addf620 100644
--- a/libavformat/wsddec.c
+++ b/libavformat/wsddec.c
@@ -137,7 +137,7 @@ static int wsd_read_header(AVFormatContext *s)
if (!(channel_assign & 1)) {
int i;
for (i = 1; i < 32; i++)
- if (channel_assign & (1 << i))
+ if ((channel_assign >> i) & 1)
st->codecpar->channel_layout |= wsd_to_av_channel_layoyt(s, i);
}