Fixes: left shift of negative value -2
Fixes: 20303/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_FLAC_fuzzer-5096829297623040
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
int i;
for (i = 0; i < len; i++) {
- int a = in[0][i];
- int b = in[1][i];
+ unsigned a = in[0][i];
+ unsigned b = in[1][i];
S(samples, 0, i) = a << shift;
S(samples, 1, i) = (a - b) << shift;
}
int i;
for (i = 0; i < len; i++) {
- int a = in[0][i];
- int b = in[1][i];
+ unsigned a = in[0][i];
+ unsigned b = in[1][i];
S(samples, 0, i) = (a + b) << shift;
S(samples, 1, i) = b << shift;
}
int i;
for (i = 0; i < len; i++) {
- int a = in[0][i];
+ unsigned a = in[0][i];
int b = in[1][i];
a -= b >> 1;
S(samples, 0, i) = (a + b) << shift;