Apply the same Deflate decoder fix as PuTTY r10278.

This causes sensible error reporting if distance codes 30 or 31 appear
in a compressed block.

(Not that Halibut actually _uses_ the Deflate decoder - it only uses
the encoder - but if I've got a copy of this code here then it should
be correct.)


git-svn-id: svn://svn.tartarus.org/sgt@10280 cda61777-01e9-0310-a592-d414129be87e