aboutsummaryrefslogtreecommitdiffstats
path: root/libavcodec
diff options
context:
space:
mode:
authorAndreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>2016-01-11 23:19:40 +0100
committerAndreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>2016-01-12 00:12:36 +0100
commitd637a58750ef456e4254736add04b5c7d0b6dc40 (patch)
tree5723ebee4f2d2bb060ded3d0c4b27c0f2fb84837 /libavcodec
parent07a11ebcab9b31e9fc784029e5d24e6fbf486ff3 (diff)
downloadffmpeg-d637a58750ef456e4254736add04b5c7d0b6dc40.tar.gz
diracdec: fix idwt_stride calculation in bytes
The transformation to bytes must happen after alignment to get the same resulting pointers as before. This fixes segmentation faults in the assembler code. The regression was introduced in commit 9553689. Reviewed-by: Kieran Kunhya <kierank@obe.tv> Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Diffstat (limited to 'libavcodec')
-rw-r--r--libavcodec/diracdec.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libavcodec/diracdec.c b/libavcodec/diracdec.c
index 486c1b3ad7..9d98535142 100644
--- a/libavcodec/diracdec.c
+++ b/libavcodec/diracdec.c
@@ -941,7 +941,7 @@ static void init_planes(DiracContext *s)
p->height = s->seq.height >> (i ? s->chroma_y_shift : 0);
p->idwt_width = w = CALC_PADDING(p->width , s->wavelet_depth);
p->idwt_height = h = CALC_PADDING(p->height, s->wavelet_depth);
- p->idwt_stride = FFALIGN(p->idwt_width << (1 + s->pshift), 8);
+ p->idwt_stride = FFALIGN(p->idwt_width, 8) << (1 + s->pshift);
for (level = s->wavelet_depth-1; level >= 0; level--) {
w = w>>1;