diff -ur libgdither-0.6/gdither.c libgdither/gdither.c
--- libgdither-0.6/gdither.c	2005-07-24 22:19:30.000000000 +0200
+++ libgdither/gdither.c	2008-04-20 13:43:33.000000000 +0200
@@ -342,7 +342,7 @@
 	for (i=0; (i + pos) < length && i < GDITHER_CONV_BLOCK; i++) {
 	    conv[i] = x[pos + i];
 	}
-	gdither_runf(s, channel, i, conv, ycast + s->channels * step);
+	gdither_runf(s, channel, i, conv, ycast + pos * step);
 	pos += i;
     }
 }

