From bf8715719a3ec85010e7f909c0cdafb265f50fea Mon Sep 17 00:00:00 2001 From: Mashiat Sarker Shakkhar Date: Wed, 30 Nov 2011 22:39:56 +0600 Subject: [PATCH] Fix two more int16_t vs. int confusion If everything works fine for 16-bit streams, the current code could be extended to do 24-bit. --- libavcodec/wmalosslessdec.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libavcodec/wmalosslessdec.c b/libavcodec/wmalosslessdec.c index 4be163e20d..2a0789bdf0 100644 --- a/libavcodec/wmalosslessdec.c +++ b/libavcodec/wmalosslessdec.c @@ -237,7 +237,7 @@ typedef struct WmallDecodeCtx { int8_t mclms_scaling; int16_t mclms_coeffs[128]; int16_t mclms_coeffs_cur[4]; - int mclms_prevvalues[64]; // FIXME: should be 32-bit / 16-bit depending on bit-depth + int16_t mclms_prevvalues[64]; // FIXME: should be 32-bit / 16-bit depending on bit-depth int16_t mclms_updates[64]; int mclms_recent; @@ -807,7 +807,7 @@ static void lms_update(WmallDecodeCtx *s, int ich, int ilms, int32_t input, int3 { int16_t icoef; int recent = s->cdlms[ich][ilms].recent; - int range = 1 << (s->bits_per_sample - 1); + int16_t range = 1 << (s->bits_per_sample - 1); int bps = s->bits_per_sample > 16 ? 4 : 2; // bytes per sample if (input > pred) {