aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2018-07-13 18:33:08 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2018-07-16 19:16:13 +0200
commitc8ca54961dcc49ac7eb6353b6c007be3a0dfe1cc (patch)
tree10b44785afb85a0c3c4c7cbaca8de3432a853e52
parent87ddf73e52b412ee015108ec2f1aaac7a05c947f (diff)
downloadffmpeg-c8ca54961dcc49ac7eb6353b6c007be3a0dfe1cc.tar.gz
avcodec/dirac_dwt_template: Fix signedness regression in interleave()
Found-by: <jdarnley> Tested-by: James Darnley <james.darnley@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 181435a4de6e38e0a15ddaf16de9a157ef41cb18) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavcodec/dirac_dwt_template.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libavcodec/dirac_dwt_template.c b/libavcodec/dirac_dwt_template.c
index 528fc7e9e7..2369c8d15b 100644
--- a/libavcodec/dirac_dwt_template.c
+++ b/libavcodec/dirac_dwt_template.c
@@ -57,8 +57,8 @@ static av_always_inline void RENAME(interleave)(TYPE *dst, TYPE *src0, TYPE *src
{
int i;
for (i = 0; i < w2; i++) {
- dst[2*i ] = (src0[i] + (unsigned)add) >> shift;
- dst[2*i+1] = (src1[i] + (unsigned)add) >> shift;
+ dst[2*i ] = ((int)(src0[i] + (unsigned)add)) >> shift;
+ dst[2*i+1] = ((int)(src1[i] + (unsigned)add)) >> shift;
}
}