Assure that the number of bits for deflatePrime() is valid.
diff --git a/deflate.c b/deflate.c
index 19cba87..23aef18 100644
--- a/deflate.c
+++ b/deflate.c
@@ -589,7 +589,8 @@
 
     if (deflateStateCheck(strm)) return Z_STREAM_ERROR;
     s = strm->state;
-    if (s->sym_buf < s->pending_out + ((Buf_size + 7) >> 3))
+    if (bits < 0 || bits > 16 ||
+        s->sym_buf < s->pending_out + ((Buf_size + 7) >> 3))
         return Z_BUF_ERROR;
     do {
         put = Buf_size - s->bi_valid;