summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYann Collet <cyan@fb.com>2017-11-03 17:48:55 (GMT)
committerYann Collet <cyan@fb.com>2017-11-03 17:48:55 (GMT)
commita1f4a0d98361c6ff95833dedba07a9d5a15cfa5e (patch)
treea455681bfb44e9a1d79d3d7a3cccf8934a243497
parentc9bbad53ffda4a4f4595e3a2b6e3994710ee2324 (diff)
downloadlz4-a1f4a0d98361c6ff95833dedba07a9d5a15cfa5e.zip
lz4-a1f4a0d98361c6ff95833dedba07a9d5a15cfa5e.tar.gz
lz4-a1f4a0d98361c6ff95833dedba07a9d5a15cfa5e.tar.bz2
moved ctx->end handling from parsers
responsibility better handled one layer above (LZ4HC_compress_generic())
-rw-r--r--lib/lz4hc.c4
-rw-r--r--lib/lz4opt.h1
2 files changed, 2 insertions, 3 deletions
diff --git a/lib/lz4hc.c b/lib/lz4hc.c
index a7577c5..cea83f2 100644
--- a/lib/lz4hc.c
+++ b/lib/lz4hc.c
@@ -457,7 +457,6 @@ static int LZ4HC_compress_hashChain (
if (limit == limitedDestSize && maxOutputSize < 1) return 0; /* Impossible to store anything */
if ((U32)inputSize > (U32)LZ4_MAX_INPUT_SIZE) return 0; /* Unsupported input size, too large (or negative) */
- ctx->end += inputSize;
if (limit == limitedDestSize) oend -= LASTLITERALS; /* Hack for support limitations LZ4 decompressor */
if (inputSize < LZ4_minLength) goto _last_literals; /* Input too small, no compression (all literals) */
@@ -651,7 +650,8 @@ static int LZ4HC_compress_generic (
limitedOutput_directive limit
)
{
- if (cLevel < 1) cLevel = LZ4HC_CLEVEL_DEFAULT; /* note : convention is different from lz4frame, maybe to reconsider */
+ ctx->end += *srcSizePtr;
+ if (cLevel < 1) cLevel = LZ4HC_CLEVEL_DEFAULT; /* note : convention is different from lz4frame, maybe something to review */
if (cLevel > 9) {
if (limit == limitedDestSize) cLevel = 10;
switch (cLevel) {
diff --git a/lib/lz4opt.h b/lib/lz4opt.h
index 7aec7dd..df8ecd6 100644
--- a/lib/lz4opt.h
+++ b/lib/lz4opt.h
@@ -128,7 +128,6 @@ static int LZ4HC_compress_optimal (
/* init */
DEBUGLOG(5, "LZ4HC_compress_optimal");
if (sufficient_len >= LZ4_OPT_NUM) sufficient_len = LZ4_OPT_NUM-1;
- ctx->end += inputSize;
ip++;
/* Main Loop */