--- a/screenshot.c Sun Jul 03 07:51:13 2005 +0000
+++ b/screenshot.c Sun Jul 03 10:22:20 2005 +0000
@@ -330,14 +330,15 @@
// write them to pcx
for (i = 0; i != n; i++) {
- int runcount = 1;
- byte *bufp = buff + i * w;
- byte runchar = *bufp++;
- uint left;
+ const byte* bufp = buff + i * w;
+ byte runchar = bufp[0];
+ uint runcount = 1;
+ uint j;
// for each pixel...
- for (left = w - 1; left > 0; --left) {
- byte ch = *bufp++;
+ for (j = 1; j < w; j++) {
+ byte ch = bufp[j];
+
if (ch != runchar || runcount >= 0x3f) {
if (runcount > 1 || (runchar & 0xC0) == 0xC0)
if (fputc(0xC0 | runcount, f) == EOF) {