summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Cadhalpun <[email protected]>2016-01-11 23:19:40 +0100
committerAndreas Cadhalpun <[email protected]>2016-01-12 00:12:36 +0100
commitd637a58750ef456e4254736add04b5c7d0b6dc40 (patch)
tree5723ebee4f2d2bb060ded3d0c4b27c0f2fb84837
parent07a11ebcab9b31e9fc784029e5d24e6fbf486ff3 (diff)
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 <[email protected]> Signed-off-by: Andreas Cadhalpun <[email protected]>
-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;