[FFmpeg-cvslog] avcodec/pngdsp: fix (un)signed type in end comparission

Michael Niedermayer git at videolan.org
Fri Sep 27 02:57:29 CEST 2013


ffmpeg | branch: release/0.10 | Michael Niedermayer <michaelni at gmx.at> | Fri Aug 30 23:14:32 2013 +0200| [9300b1f64e5b85164e50d95dfed4a66452cb667e] | committer: Michael Niedermayer

avcodec/pngdsp: fix (un)signed type in end comparission

Fixes out of array accesses
Fixes Ticket2919

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

Conflicts:

	libavcodec/pngdsp.c

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=9300b1f64e5b85164e50d95dfed4a66452cb667e
---

 libavcodec/pngdec.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavcodec/pngdec.c b/libavcodec/pngdec.c
index b768d38..5a76918 100644
--- a/libavcodec/pngdec.c
+++ b/libavcodec/pngdec.c
@@ -121,7 +121,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);



More information about the ffmpeg-cvslog mailing list