summaryrefslogtreecommitdiff
path: root/src/zstream.c
diff options
context:
space:
mode:
authorPatrick Steinhardt <ps@pks.im>2019-12-13 14:57:53 +0100
committerPatrick Steinhardt <ps@pks.im>2020-01-09 12:22:28 +0100
commitd8f6fee36efb4a656a317f873b617888c6f861f4 (patch)
treecea3f9858561b7e8f8da053385c1ddfadd3bf140 /src/zstream.c
parentba64f50cb1ccbe732132aa3be9c88a67a0ca52ac (diff)
downloadlibgit2-d8f6fee36efb4a656a317f873b617888c6f861f4.tar.gz
pack: refactor unpacking of raw objects to use `git_zstream`
While we do have a zstream abstraction that encapsulates all the calls to zlib as well as its error handling, we do not use it in our pack file code. Refactor it to make the code a lot easier to understand.
Diffstat (limited to 'src/zstream.c')
-rw-r--r--src/zstream.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/zstream.c b/src/zstream.c
index fc8bfb868..975ead2f6 100644
--- a/src/zstream.c
+++ b/src/zstream.c
@@ -77,6 +77,11 @@ bool git_zstream_done(git_zstream *zstream)
return (!zstream->in_len && zstream->zerr == Z_STREAM_END);
}
+bool git_zstream_eos(git_zstream *zstream)
+{
+ return zstream->zerr == Z_STREAM_END;
+}
+
size_t git_zstream_suggest_output_len(git_zstream *zstream)
{
if (zstream->in_len > ZSTREAM_BUFFER_SIZE)