[FFmpeg-cvslog] avcodec/ac3: Fix undefined shift in ff_ac3_bit_alloc_calc_mask()
Michael Niedermayer
git at videolan.org
Sun Mar 15 11:45:17 CET 2015
ffmpeg | branch: master | Michael Niedermayer <michaelni at gmx.at> | Sun Mar 15 11:21:50 2015 +0100| [e3f5b6f16d606b769a82cf4ef1647c4887419374] | committer: Michael Niedermayer
avcodec/ac3: Fix undefined shift in ff_ac3_bit_alloc_calc_mask()
Found-by: Clang -fsanitize=shift
Reported-by: Thierry Foucu <tfoucu at google.com>
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e3f5b6f16d606b769a82cf4ef1647c4887419374
---
libavcodec/ac3.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/libavcodec/ac3.c b/libavcodec/ac3.c
index 29e132f..c4fc77c 100644
--- a/libavcodec/ac3.c
+++ b/libavcodec/ac3.c
@@ -200,9 +200,9 @@ int ff_ac3_bit_alloc_calc_mask(AC3BitAllocParameters *s, int16_t *band_psd,
if (band >= AC3_CRITICAL_BANDS || dba_lengths[seg] > AC3_CRITICAL_BANDS-band)
return -1;
if (dba_values[seg] >= 4) {
- delta = (dba_values[seg] - 3) << 7;
+ delta = (dba_values[seg] - 3) * 128;
} else {
- delta = (dba_values[seg] - 4) << 7;
+ delta = (dba_values[seg] - 4) * 128;
}
for (i = 0; i < dba_lengths[seg]; i++) {
mask[band++] += delta;
More information about the ffmpeg-cvslog
mailing list