diff options
author | Nathan Moinvaziri <nathan@nathanm.com> | 2020-06-02 09:17:56 -0700 |
---|---|---|
committer | Hans Kristian Rosbach <hk-github@circlestorm.org> | 2020-06-08 21:16:31 +0200 |
commit | bf01f6b9ea4b2095de7d3d456fd5963f1e8fe05f (patch) | |
tree | 913006ca532f0596d311d18e82d03625f2f5f70d /deflate.c | |
parent | 8095fa71f0187c99bfbb364c99b563ecf57eadb9 (diff) |
Move check for match length in deflate_quick to check_match.
Diffstat (limited to 'deflate.c')
-rw-r--r-- | deflate.c | 5 |
1 files changed, 5 insertions, 0 deletions
@@ -1216,6 +1216,11 @@ static void lm_init(deflate_state *s) { * Check that the match at match_start is indeed a match. */ void check_match(deflate_state *s, Pos start, Pos match, int length) { + /* check that the match length is valid*/ + if (length < MIN_MATCH || length > MAX_MATCH) { + fprintf(stderr, " start %u, match %u, length %d\n", start, match, length); + z_error("invalid match length"); + } /* check that the match is indeed a match */ if (memcmp(s->window + match, s->window + start, length) != EQUAL) { fprintf(stderr, " start %u, match %u, length %d\n", start, match, length); |