diff options
author | Mark Adler <madler@alumni.caltech.edu> | 2011-12-13 22:25:59 -0800 |
---|---|---|
committer | Mark Adler <madler@alumni.caltech.edu> | 2011-12-13 22:29:37 -0800 |
commit | 850a198ff1879e506c961c91da30009539ed14b3 (patch) | |
tree | 14e4847af5c6536a1f662a9f6562ccfa13486709 /gzread.c | |
parent | 377173b57ef9fab5066481a87a1901bd72fa2c32 (diff) | |
download | zlib-850a198ff1879e506c961c91da30009539ed14b3.tar.gz |
Avoid use of Z_BUF_ERROR in gz* functions except for premature EOF.
Z_BUF_ERROR was also being used for an unsuccessful gzungetc and for buffer
lengths that didn't fit in an int. Those uses were changed to Z_DATA_ERROR
in order to assure that Z_BUF_ERROR occurs only when a premature end of
input occurs, indicating that gzclearerr() can be used.
Diffstat (limited to 'gzread.c')
-rw-r--r-- | gzread.c | 4 |
1 files changed, 2 insertions, 2 deletions
@@ -302,7 +302,7 @@ int ZEXPORT gzread(file, buf, len) /* since an int is returned, make sure len fits in one, otherwise return with an error (this avoids the flaw in the interface) */ if ((int)len < 0) { - gz_error(state, Z_BUF_ERROR, "requested length does not fit in int"); + gz_error(state, Z_DATA_ERROR, "requested length does not fit in int"); return -1; } @@ -445,7 +445,7 @@ int ZEXPORT gzungetc(c, file) /* if no room, give up (must have already done a gzungetc()) */ if (state->x.have == (state->size << 1)) { - gz_error(state, Z_BUF_ERROR, "out of room to push characters"); + gz_error(state, Z_DATA_ERROR, "out of room to push characters"); return -1; } |