# HG changeset patch # User reimar # Date 1243156459 0 # Node ID 3dcbde0de5775b429faa33c86ccb70f7940df6c8 # Parent 31f48c034eae47a8f074d0a070652b846549d4a6 eatqi: move "block" variable into context to ensure sufficient alignment for idct_put for compilers/architectures that can not align stack variables that much. This is also consistent with similar code in eatgq.c diff -r 31f48c034eae -r 3dcbde0de577 eatqi.c --- a/eatqi.c Sun May 24 09:06:06 2009 +0000 +++ b/eatqi.c Sun May 24 09:14:19 2009 +0000 @@ -40,6 +40,7 @@ AVFrame frame; void *bitstream_buf; unsigned int bitstream_buf_size; + DECLARE_ALIGNED_16(DCTELEM, block[6][64]); } TqiContext; static av_cold int tqi_decode_init(AVCodecContext *avctx) @@ -108,7 +109,6 @@ const uint8_t *buf_end = buf+buf_size; TqiContext *t = avctx->priv_data; MpegEncContext *s = &t->s; - DECLARE_ALIGNED_16(DCTELEM, block[6][64]); s->width = AV_RL16(&buf[0]); s->height = AV_RL16(&buf[2]); @@ -136,8 +136,8 @@ for (s->mb_y=0; s->mb_y<(avctx->height+15)/16; s->mb_y++) for (s->mb_x=0; s->mb_x<(avctx->width+15)/16; s->mb_x++) { - tqi_decode_mb(s, block); - tqi_idct_put(t, block); + tqi_decode_mb(s, t->block); + tqi_idct_put(t, t->block); } *data_size = sizeof(AVFrame);