diff options
author | Julian Laubstein <julianlaubstein@yahoo.de> | 2016-02-06 11:37:34 +0100 |
---|---|---|
committer | Julian Laubstein <julianlaubstein@yahoo.de> | 2016-02-06 11:37:34 +0100 |
commit | 6fdd7194c81be7234a126bdc3b48f0291fce3567 (patch) | |
tree | 7d5ac74b7385ce4ebf77588d80549c884c2b993c /src/StringCompression.cpp | |
parent | Merge pull request #2958 from LogicParrot/fence (diff) | |
parent | Bulk clearing of whitespace (diff) | |
download | cuberite-6fdd7194c81be7234a126bdc3b48f0291fce3567.tar cuberite-6fdd7194c81be7234a126bdc3b48f0291fce3567.tar.gz cuberite-6fdd7194c81be7234a126bdc3b48f0291fce3567.tar.bz2 cuberite-6fdd7194c81be7234a126bdc3b48f0291fce3567.tar.lz cuberite-6fdd7194c81be7234a126bdc3b48f0291fce3567.tar.xz cuberite-6fdd7194c81be7234a126bdc3b48f0291fce3567.tar.zst cuberite-6fdd7194c81be7234a126bdc3b48f0291fce3567.zip |
Diffstat (limited to 'src/StringCompression.cpp')
-rw-r--r-- | src/StringCompression.cpp | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/src/StringCompression.cpp b/src/StringCompression.cpp index a7f2db2a9..8be6d0026 100644 --- a/src/StringCompression.cpp +++ b/src/StringCompression.cpp @@ -13,7 +13,7 @@ int CompressString(const char * a_Data, size_t a_Length, AString & a_Compressed, int a_Factor) { uLongf CompressedSize = compressBound(static_cast<uLong>(a_Length)); - + // HACK: We're assuming that AString returns its internal buffer in its data() call and we're overwriting that buffer! // It saves us one allocation and one memcpy of the entire compressed data // It may not work on some STL implementations! (Confirmed working on MSVC 2008 & 2010) @@ -64,14 +64,14 @@ int CompressStringGZIP(const char * a_Data, size_t a_Length, AString & a_Compres strm.avail_in = static_cast<uInt>(a_Length); strm.next_out = reinterpret_cast<Bytef *>(Buffer); strm.avail_out = sizeof(Buffer); - + int res = deflateInit2(&strm, 9, Z_DEFLATED, 31, 9, Z_DEFAULT_STRATEGY); if (res != Z_OK) { LOG("%s: compression initialization failed: %d (\"%s\").", __FUNCTION__, res, strm.msg); return res; } - + for (;;) { res = deflate(&strm, Z_FINISH); @@ -91,7 +91,7 @@ int CompressStringGZIP(const char * a_Data, size_t a_Length, AString & a_Compres } break; } - + case Z_STREAM_END: { // Finished compressing. Consume the rest of the buffer and return @@ -99,7 +99,7 @@ int CompressStringGZIP(const char * a_Data, size_t a_Length, AString & a_Compres deflateEnd(&strm); return Z_OK; } - + default: { // An error has occurred, log it and return the error value @@ -128,14 +128,14 @@ extern int UncompressStringGZIP(const char * a_Data, size_t a_Length, AString & strm.avail_in = static_cast<uInt>(a_Length); strm.next_out = reinterpret_cast<Bytef *>(Buffer); strm.avail_out = sizeof(Buffer); - + int res = inflateInit2(&strm, 31); // Force GZIP decoding if (res != Z_OK) { LOG("%s: uncompression initialization failed: %d (\"%s\").", __FUNCTION__, res, strm.msg); return res; } - + for (;;) { res = inflate(&strm, Z_NO_FLUSH); @@ -155,7 +155,7 @@ extern int UncompressStringGZIP(const char * a_Data, size_t a_Length, AString & } break; } - + case Z_STREAM_END: { // Finished uncompressing. Consume the rest of the buffer and return @@ -163,7 +163,7 @@ extern int UncompressStringGZIP(const char * a_Data, size_t a_Length, AString & inflateEnd(&strm); return Z_OK; } - + default: { // An error has occurred, log it and return the error value @@ -190,14 +190,14 @@ extern int InflateString(const char * a_Data, size_t a_Length, AString & a_Uncom strm.avail_in = static_cast<uInt>(a_Length); strm.next_out = reinterpret_cast<Bytef *>(Buffer); strm.avail_out = sizeof(Buffer); - + int res = inflateInit(&strm); // Force GZIP decoding if (res != Z_OK) { LOG("%s: inflation initialization failed: %d (\"%s\").", __FUNCTION__, res, strm.msg); return res; } - + for (;;) { res = inflate(&strm, Z_NO_FLUSH); @@ -217,7 +217,7 @@ extern int InflateString(const char * a_Data, size_t a_Length, AString & a_Uncom } break; } - + case Z_STREAM_END: { // Finished uncompressing. Consume the rest of the buffer and return @@ -225,7 +225,7 @@ extern int InflateString(const char * a_Data, size_t a_Length, AString & a_Uncom inflateEnd(&strm); return Z_OK; } - + default: { // An error has occurred, log it and return the error value |