Have gzputc return the character written instead of the argument.

When successful, gzputc would return the second argument.  If the
second argument were -1, gzputc would return -1 instead of the
character written, which was 255.  However the -1 would not be
distinguishable from an error.  Now gzputc returns 255 in that
case.
This commit is contained in:
Mark Adler 2012-01-29 09:12:08 -08:00
parent 8fbd9f1340
commit 22eb01184f

View File

@ -272,14 +272,14 @@ int ZEXPORT gzputc(file, c)
strm->next_in = state->in; strm->next_in = state->in;
strm->next_in[strm->avail_in++] = c; strm->next_in[strm->avail_in++] = c;
state->x.pos++; state->x.pos++;
return c; return c & 0xff;
} }
/* no room in buffer or not initialized, use gz_write() */ /* no room in buffer or not initialized, use gz_write() */
buf[0] = c; buf[0] = c;
if (gzwrite(file, buf, 1) != 1) if (gzwrite(file, buf, 1) != 1)
return -1; return -1;
return c; return c & 0xff;
} }
/* -- see zlib.h -- */ /* -- see zlib.h -- */