Commit e9f5e87781e88aa3afa7679783c204604479f9e9

Ramsay Jones 2009-02-03T18:25:13

Rearrange some code to improve clarity In particular, the test for z-stream input completion (zs.avail_in != 0) logically belongs with the test for the Z_STREAM_END stream status. This is also consistent with the identical check in finish_inflate(). Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Shawn O. Pearce <spearce@spearce.org>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
diff --git a/src/odb.c b/src/odb.c
index a77eac7..fc58168 100644
--- a/src/odb.c
+++ b/src/odb.c
@@ -390,10 +390,10 @@ static int inflate_buffer(void *in, size_t inlen, void *out, size_t outlen)
 
 	inflateEnd(&zs);
 
-	if ((status != Z_STREAM_END) || (zs.total_out != outlen))
+	if ((status != Z_STREAM_END) || (zs.avail_in != 0))
 		return GIT_ERROR;
 
-	if (zs.avail_in != 0)
+	if (zs.total_out != outlen)
 		return GIT_ERROR;
 
 	return GIT_SUCCESS;