summaryrefslogtreecommitdiff
path: root/libarchive/archive_read_support_format_lha.c
diff options
context:
space:
mode:
authorMichihiro NAKAJIMA <ggcueroad@gmail.com>2011-08-08 08:45:13 -0400
committerMichihiro NAKAJIMA <ggcueroad@gmail.com>2011-08-08 08:45:13 -0400
commit0651e3cfc4b4dd16a994f868447060a8d83939a8 (patch)
tree77ae754107405b6a33c75d2e82b3d084898a636a /libarchive/archive_read_support_format_lha.c
parent4568720b19a6fb5cc112c3caa490ff76ff9940bd (diff)
downloadlibarchive-0651e3cfc4b4dd16a994f868447060a8d83939a8.tar.gz
Kill the possibility that a huffman table can be made in no available
bit lengths, which happens only when reading a broken file. SVN-Revision: 3565
Diffstat (limited to 'libarchive/archive_read_support_format_lha.c')
-rw-r--r--libarchive/archive_read_support_format_lha.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libarchive/archive_read_support_format_lha.c b/libarchive/archive_read_support_format_lha.c
index 02708aeb..4524a321 100644
--- a/libarchive/archive_read_support_format_lha.c
+++ b/libarchive/archive_read_support_format_lha.c
@@ -2542,7 +2542,7 @@ lzh_make_huffman_table(struct huffman *hf)
maxbits = i;
}
}
- if ((ptn & 0xffff) != 0 || maxbits > hf->tbl_bits)
+ if (ptn != 0x10000 || maxbits > hf->tbl_bits)
return (0);/* Invalid */
hf->max_bits = maxbits;