From 398885a52dfa36f8dfa0e715052e894f2cd592ac Mon Sep 17 00:00:00 2001 From: Emmanuel Marty Date: Mon, 30 Jan 2023 13:19:03 +0100 Subject: [PATCH] Small simplifications in matchfinder --- src/matchfinder.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/matchfinder.c b/src/matchfinder.c index 12815d5..6e4fee3 100644 --- a/src/matchfinder.c +++ b/src/matchfinder.c @@ -259,7 +259,7 @@ static int lzsa_find_matches_at(lzsa_compressor *pCompressor, const int nOffset, if ((matchptr - pMatches) < nMaxMatches) { const unsigned int nMatchOffset = (const unsigned int)(nOffset - match_pos); - if (nMatchOffset <= MAX_OFFSET && nMatchOffset != nPrevOffset) { + if (nMatchOffset <= MAX_OFFSET) { matchptr->length = ((const unsigned short)(ref >> (LCP_SHIFT + TAG_BITS))) | 0x8000; matchptr->offset = (const unsigned short)nMatchOffset; matchptr++; @@ -287,6 +287,8 @@ static int lzsa_find_matches_at(lzsa_compressor *pCompressor, const int nOffset, } matchptr->offset = (const unsigned short)nMatchOffset; matchptr++; + + nPrevOffset = nMatchOffset; } } @@ -299,7 +301,7 @@ static int lzsa_find_matches_at(lzsa_compressor *pCompressor, const int nOffset, if ((matchptr - pMatches) < nMaxMatches) { const unsigned int nMatchOffset = (const unsigned int)(nOffset - match_pos); - if (nMatchOffset <= MAX_OFFSET && nMatchOffset != nPrevOffset) { + if (nMatchOffset <= MAX_OFFSET) { const unsigned short nMatchLen = ((const unsigned short)(ref >> (LCP_SHIFT + TAG_BITS))); if (nMatchLen > 2) {