aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLode Vandevenne <lode@google.com>2013-01-29 07:21:18 -0800
committerLode Vandevenne <lode@google.com>2013-01-29 07:21:18 -0800
commit143f730cde02e78a0e8185d18b02ddb47ac2fed0 (patch)
tree88d3d9ca5f314bcf0463b5f56f9b314e13f535e9
parent340a133d08c3c1ec9a0e03669ff692185c520e8c (diff)
downloadzopfli-143f730cde02e78a0e8185d18b02ddb47ac2fed0.tar.gz
Fix bug with large blocks
-rw-r--r--deflate.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/deflate.c b/deflate.c
index 807c11a..74bb3d8 100644
--- a/deflate.c
+++ b/deflate.c
@@ -665,8 +665,9 @@ void Deflate(const Options* options, int btype, int final,
#else
size_t i = 0;
while (i < insize) {
- int final2 = final && (i + MASTER_BLOCK_SIZE >= insize);
- size_t size = final ? insize - i : MASTER_BLOCK_SIZE;
+ int masterfinal = (i + MASTER_BLOCK_SIZE >= insize);
+ int final2 = final && masterfinal;
+ size_t size = masterfinal ? insize - i : MASTER_BLOCK_SIZE;
DeflatePart(options, btype, final2, in, i, i + size, bp, out, outsize);
i += size;
}