[vlc-commits] avcodec: fix unaligned USWC copy (fixes #6333)
    Rémi Denis-Courmont 
    git at videolan.org
       
    Fri Oct 12 10:28:50 CEST 2012
    
    
  
vlc | branch: master | Rémi Denis-Courmont <remi at remlab.net> | Thu Oct 11 19:42:03 2012 +0300| [39dc439cf5e3fe83b87078bcf93c13d07fd02dac] | committer: Rémi Denis-Courmont
avcodec: fix unaligned USWC copy (fixes #6333)
> http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=39dc439cf5e3fe83b87078bcf93c13d07fd02dac
---
 modules/codec/avcodec/copy.c |    6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/modules/codec/avcodec/copy.c b/modules/codec/avcodec/copy.c
index b438287..15160ed 100644
--- a/modules/codec/avcodec/copy.c
+++ b/modules/codec/avcodec/copy.c
@@ -86,10 +86,10 @@ static void CopyFromUswc(uint8_t *dst, size_t dst_pitch,
 
     ASM_SSE2(cpu, "mfence");
     for (unsigned y = 0; y < height; y++) {
-        const unsigned unaligned = (intptr_t)src & 0x0f;
-        unsigned x;
+        const unsigned unaligned = (-(uintptr_t)src) & 0x0f;
+        unsigned x = 0;
 
-        for (x = 0; x < unaligned; x++)
+        for (; x < unaligned; x++)
             dst[x] = src[x];
 
 #ifdef CAN_COMPILE_SSE4_1
    
    
More information about the vlc-commits
mailing list