summaryrefslogtreecommitdiff
path: root/deflate.c
diff options
context:
space:
mode:
Diffstat (limited to 'deflate.c')
-rw-r--r--deflate.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/deflate.c b/deflate.c
index 5eb1faa..7c3f3bc 100644
--- a/deflate.c
+++ b/deflate.c
@@ -2417,6 +2417,10 @@ int deflate_decompress_data(deflate_decompress_ctx *dctx,
debug(("recv: dist %d\n", code));
if (code == -1)
goto finished;
+ if (code >= 30) {
+ error = DEFLATE_ERR_BADDISTCODE;
+ goto finished;
+ }
dctx->state = GOTDISTSYM;
dctx->sym = code;
break;