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)
committerCarl Eugen Hoyos <cehoyos@ag.or.at>
Fri, 30 Aug 2013 21:42:00 +0000 (23:42 +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)

libavcodec/pngdsp.c

index 75ec996..eb8c6b2 100644 (file)
@@ -30,7 +30,7 @@
 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);