]> git.ipfire.org Git - thirdparty/zstd.git/commitdiff
working kSlotNew for ZSTD_btopt
authorinikep <inikep@gmail.com>
Sat, 19 Mar 2016 14:32:21 +0000 (15:32 +0100)
committerinikep <inikep@gmail.com>
Sat, 19 Mar 2016 14:32:21 +0000 (15:32 +0100)
lib/zstd_opt.h

index 69750aaaa93ad4a0e6171bca0e6c1fc23ca0c597..a978c72f72422293b5d1b39fe21d8eefeef3267e 100644 (file)
@@ -528,7 +528,8 @@ void ZSTD_compressBlock_opt_generic(ZSTD_CCtx* ctx,
             if (opt[cur].off >= ZSTD_REP_NUM) {
                 opt[cur].rep[3] = (kSlotNew < 3) ? opt[cur-mlen].rep[2] : opt[cur-mlen].rep[3];
                 opt[cur].rep[2] = (kSlotNew < 2) ? opt[cur-mlen].rep[1] : opt[cur-mlen].rep[2];
-                opt[cur].rep[1] = (kSlotNew < 1) ? opt[cur-mlen].rep[0] : opt[cur-mlen].rep[1];              
+                opt[cur].rep[1] = (kSlotNew < 1) ? opt[cur-mlen].rep[0] : opt[cur-mlen].rep[1];
+                opt[cur].rep[0] = opt[cur-mlen].rep[0];
                 opt[cur].rep[kSlotNew] = opt[cur].off - ZSTD_REP_MOVE;               
                 ZSTD_LOG_ENCODE("%d: COPYREP_OFF cur=%d mlen=%d rep=%d rep[1]=%d\n", (int)(inr-base), cur, mlen, opt[cur].rep[0], opt[cur].rep[1]);
            } else {