diff options
| author | = <jakob@memeware.net> | 2017-05-15 16:41:12 -0400 |
|---|---|---|
| committer | = <jakob@memeware.net> | 2017-05-15 16:41:12 -0400 |
| commit | ba4fad8c5a409dd0738bc09a95cbdebf360aa496 (patch) | |
| tree | 989dfc5e3594a74ce2e4fcd4014b8db7b33b4629 /src/compress.c | |
| parent | 2ba0b505ce1ee748f42a85f7e27906737fa47fc8 (diff) | |
Began finalization of the table dumping functionality
Diffstat (limited to 'src/compress.c')
| -rw-r--r-- | src/compress.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/src/compress.c b/src/compress.c index 47acb74..9b6607d 100644 --- a/src/compress.c +++ b/src/compress.c @@ -65,7 +65,7 @@ struct stream *stream_inflate(struct stream *s, size_t len, /* Deflates `s` into a newly allocated stream structure. */ struct stream *stream_deflate(struct stream *s, size_t len) { struct stream *new = stream_new(len); - z_stream strm; + z_stream strm; strm.zalloc = Z_NULL; strm.zfree = Z_NULL; strm.opaque = Z_NULL; @@ -73,15 +73,15 @@ struct stream *stream_deflate(struct stream *s, size_t len) { if (deflateInit(&strm, LEVEL) != Z_OK) return NULL; + strm.avail_in = len; + strm.next_in = (unsigned char *) s->_cur; do { - strm.avail_in = len; - strm.next_in = (unsigned char *) s->_cur; - do { - strm.avail_out = len; - strm.next_out = (unsigned char *) new->_cur; - deflate(&strm, Z_NO_FLUSH); // Flush param may cause issues. - } while (strm.avail_out == 0); - } while (0); + strm.avail_out = len; + strm.next_out = (unsigned char *) new->_cur; + deflate(&strm, Z_NO_FLUSH); // Flush param may cause issues. + } while (strm.avail_out == 0); + + new->len = len - strm.avail_out; deflateEnd(&strm); return new; |