<div style="font-family: Arial, sans-serif; font-size: 14px;">The implementations of the Huffman decoder in XADPrefixCode.m peek ahead some number of bits, and then skip over those bits that are actually part of the current symbol. In the case where</div><div style="font-family: Arial, sans-serif; font-size: 14px;"><ul style="margin-top: 0px; margin-bottom: 0px;" data-editing-info="{"orderedStyleType":1,"unorderedStyleType":1}"><li style="list-style-type: disc;"><span>the peek-ahead exceeds the end of input but</span></li><li style="list-style-type: disc;"><span>the final read of the symbol does not,</span></li></ul></div><div style="font-family: Arial, sans-serif; font-size: 14px;">the patched code wrongly raises the end of file exception.</div><div style="font-family: Arial, sans-serif; font-size: 14px;"><br></div><div style="font-family: Arial, sans-serif; font-size: 14px;">The Hall of Fame CDROM can be found at <span><a target="_blank" rel="noreferrer nofollow noopener" href="https://archive.org/details/HallofFameCDROM">https://archive.org/details/HallofFameCDROM</a></span> . This has a number of LZH files. Many of them also fail to decode with the patched unar. This demonstrates the corresponding bug for the big-endian bit reader. About one fourth of the LZH files fail to decode with the patch, but decode successfully without the patch.</div><div style="font-family: Arial, sans-serif; font-size: 14px;"><br></div><div style="font-family: Arial, sans-serif; font-size: 14px;">I have attached a list of files in the Hall of Fame CDROM that fail to decode, and one of the failing LZH files.</div><div style="font-family: Arial, sans-serif; font-size: 14px;"><br></div>
<div style="font-family: Arial, sans-serif; font-size: 14px;" class="protonmail_signature_block">
<div class="protonmail_signature_block-user protonmail_signature_block-empty">
</div>
<div class="protonmail_signature_block-proton">
Sent with <a href="https://proton.me/mail/home" target="_blank">Proton Mail</a> secure email.
</div>
</div>