diff -Nur libpng-1.2.5.orig/pngconf.h libpng-1.2.5/pngconf.h --- libpng-1.2.5.orig/pngconf.h 2002-10-03 13:32:27.000000000 +0200 +++ libpng-1.2.5/pngconf.h 2004-04-28 13:40:03.617656368 +0200 @@ -252,8 +252,8 @@ # undef _BSD_SOURCE # endif # ifdef _SETJMP_H - __png.h__ already includes setjmp.h; - __dont__ include it again.; +#warning __png.h__ already includes setjmp.h; +#warning __dont__ include it again.; # endif # endif /* __linux__ */ diff -Nur libpng-1.2.5.orig/pngrtran.c libpng-1.2.5/pngrtran.c --- libpng-1.2.5.orig/pngrtran.c 2002-10-03 13:32:29.000000000 +0200 +++ libpng-1.2.5/pngrtran.c 2004-04-28 13:38:36.900839328 +0200 @@ -1930,7 +1930,7 @@ if (flags & PNG_FLAG_FILLER_AFTER) { png_bytep sp = row + (png_size_t)row_width * 3; - png_bytep dp = sp + (png_size_t)row_width; + png_bytep dp = sp + (png_size_t)row_width ; for (i = 1; i < row_width; i++) { *(--dp) = lo_filler; @@ -1947,7 +1947,7 @@ else { png_bytep sp = row + (png_size_t)row_width * 3; - png_bytep dp = sp + (png_size_t)row_width; + png_bytep dp = sp + (png_size_t)row_width ; for (i = 0; i < row_width; i++) { *(--dp) = *(--sp); @@ -1965,8 +1965,8 @@ /* This changes the data from RRGGBB to RRGGBBXX */ if (flags & PNG_FLAG_FILLER_AFTER) { - png_bytep sp = row + (png_size_t)row_width * 3; - png_bytep dp = sp + (png_size_t)row_width; + png_bytep sp = row + (png_size_t)row_width * 6; + png_bytep dp = sp + (png_size_t)row_width * 2; for (i = 1; i < row_width; i++) { *(--dp) = hi_filler; @@ -1987,8 +1987,8 @@ /* This changes the data from RRGGBB to XXRRGGBB */ else { - png_bytep sp = row + (png_size_t)row_width * 3; - png_bytep dp = sp + (png_size_t)row_width; + png_bytep sp = row + (png_size_t)row_width * 6; + png_bytep dp = sp + (png_size_t)row_width * 2; for (i = 0; i < row_width; i++) { *(--dp) = *(--sp);