From 586de1f5b1bf1fd9fbe3a06b639cb8ef8fa78b1a Mon Sep 17 00:00:00 2001 From: Ilia Platone Date: Sat, 22 Dec 2018 00:38:23 +0100 Subject: [PATCH] [tippecanoe] Added missing dependency for libdeflate as git submodule | This work was sponsored by SkySight (@plantain) --- mvt.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/mvt.cpp b/mvt.cpp index 91a5ca6..07d7a1c 100644 --- a/mvt.cpp +++ b/mvt.cpp @@ -47,6 +47,7 @@ int decompress(std::string const &input, std::string &output) { output.resize(existing_output + 2 * avail_in + 100); next_out = (void *) (output.data() + existing_output); avail_out = (output.size() - existing_output); + avail_in = (input.size() - avail_in); if (ret != LIBDEFLATE_SUCCESS) { fprintf(stderr, "Decompression error: "); @@ -85,13 +86,14 @@ int compress(std::string const &input, std::string &output) { output.resize(avail_in + increase); avail_out = increase; next_out = (void *) (output.data() + avail_in); + next_in = (void *) (input.data() + avail_in); int ret = libdeflate_deflate_compress(deflate_s, next_in, avail_in, next_out, avail_out); if (ret != LIBDEFLATE_SUCCESS) { return -1; } - avail_in += (increase - avail_out); + avail_in -= (increase - avail_out); } while (avail_out == 0); libdeflate_free_compressor(deflate_s); output.resize(avail_in);