Browse Source

Apparently, zlib sometimes reports Z_BUF_ERROR on input exhaustion as well as on running out of output space. This could well fix the assert bug reported by weasel and arma.

svn:r6682
Nick Mathewson 19 years ago
parent
commit
06e09cdd47
1 changed files with 2 additions and 0 deletions
  1. 2 0
      src/common/torgzip.c

+ 2 - 0
src/common/torgzip.c

@@ -348,6 +348,8 @@ tor_zlib_process(tor_zlib_state_t *state,
     case Z_STREAM_END:
       return TOR_ZLIB_DONE;
     case Z_BUF_ERROR:
+      if (state->stream.avail_in == 0)
+        return Z_OK;
       return TOR_ZLIB_BUF_FULL;
     case Z_OK:
       if (state->stream.avail_out == 0)