avcodec/pngdsp: fix (un)signed type in end comparission
authorMichael Niedermayer <michaelni@gmx.at>
Fri, 30 Aug 2013 21:14:32 +0000 (23:14 +0200)
committerMichael Niedermayer <michaelni@gmx.at>
Sun, 22 Sep 2013 22:02:30 +0000 (00:02 +0200)
Fixes out of array accesses
Fixes Ticket2919

Found_by: ami_stuff
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 86736f59d6a527d8bc807d09b93f971c0fe0bb07)

Conflicts:

libavcodec/pngdsp.c

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/pngdec.c

index 609b21e..1a0b298 100644 (file)
@@ -133,7 +133,7 @@ static void png_put_interlaced_row(uint8_t *dst, int width,
 static void add_bytes_l2_c(uint8_t *dst, uint8_t *src1, uint8_t *src2, int w)
 {
     long i;
-    for(i=0; i<=w-sizeof(long); i+=sizeof(long)){
+    for(i=0; i<=w-(int)sizeof(long); i+=sizeof(long)){
         long a = *(long*)(src1+i);
         long b = *(long*)(src2+i);
         *(long*)(dst+i) = ((a&pb_7f) + (b&pb_7f)) ^ ((a^b)&pb_80);