postproc: fix unaligned access
authorCarl Eugen Hoyos <cehoyos@ag.or.at>
Tue, 23 Feb 2016 14:50:28 +0000 (15:50 +0100)
committerMichael Niedermayer <michael@niedermayer.cc>
Tue, 23 Feb 2016 17:01:08 +0000 (18:01 +0100)
Based on 59074310 by Andreas Cadhalpun.
Fixes ticket #5259.
(cherry picked from commit 2aa21eec1adcb3737be59f0eab7081c5a790faa9)

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libpostproc/postprocess.c

index 3b86f93..1dc719c 100644 (file)
@@ -973,7 +973,7 @@ void  pp_postprocess(const uint8_t * src[3], const int srcStride[3],
         int i;
         const int count= FFMAX(mbHeight * absQPStride, mbWidth);
         for(i=0; i<(count>>2); i++){
-            ((uint32_t*)c->stdQPTable)[i] = (((const uint32_t*)QP_store)[i]>>1) & 0x7F7F7F7F;
+            AV_WN32(c->stdQPTable + (i<<2), AV_RN32(QP_store + (i<<2)) >> 1 & 0x7F7F7F7F);
         }
         for(i<<=2; i<count; i++){
             c->stdQPTable[i] = QP_store[i]>>1;