X-Git-Url: https://wimlib.net/git/?p=wimlib;a=blobdiff_plain;f=src%2Fdecompress_common.c;h=66440efe203acaed25f56d6a45ddf07d12c25ab7;hp=2c3da1611324a00c4250794145a923688d7a595c;hb=4e4f9c37fe7dfedb4408b72466666eb136d62c50;hpb=fe548d263d477a745dfa5057f540cc5c35ecce89 diff --git a/src/decompress_common.c b/src/decompress_common.c index 2c3da161..66440efe 100644 --- a/src/decompress_common.c +++ b/src/decompress_common.c @@ -2,25 +2,12 @@ * decompress_common.c * * Code for decompression shared among multiple compression formats. - */ - -/* - * Copyright (C) 2012, 2013, 2014 Eric Biggers * - * This file is part of wimlib, a library for working with WIM files. + * Author: Eric Biggers + * Year: 2012 - 2014 * - * wimlib is free software; you can redistribute it and/or modify it under the - * terms of the GNU General Public License as published by the Free - * Software Foundation; either version 3 of the License, or (at your option) - * any later version. - * - * wimlib is distributed in the hope that it will be useful, but WITHOUT ANY - * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR - * A PARTICULAR PURPOSE. See the GNU General Public License for more - * details. - * - * You should have received a copy of the GNU General Public License - * along with wimlib; if not, see http://www.gnu.org/licenses/. + * The author dedicates this file to the public domain. + * You can do whatever you want with this file. */ #ifdef HAVE_CONFIG_H @@ -28,7 +15,7 @@ #endif #include "wimlib/decompress_common.h" -#include "wimlib/error.h" +#include "wimlib/util.h" /* for BUILD_BUG_ON() */ #include @@ -191,7 +178,6 @@ make_huffman_decode_table(u16 decode_table[const restrict], if (unlikely(left < 0)) { /* The lengths overflow the codespace; that is, the code * is over-subscribed. */ - DEBUG("Invalid prefix code (over-subscribed)"); return -1; } } @@ -213,7 +199,6 @@ make_huffman_decode_table(u16 decode_table[const restrict], table_num_entries * sizeof(decode_table[0])); return 0; } - DEBUG("Invalid prefix code (incomplete set)"); return -1; } @@ -307,13 +292,7 @@ make_huffman_decode_table(u16 decode_table[const restrict], v = MAKE_DIRECT_ENTRY(sorted_syms[sym_idx], codeword_len); v |= v << 16; - if (sizeof(unsigned long) == 8) { - /* This may produce a compiler warning if an - * 'unsigned long' is 32 bits, but this won't be - * executed unless an 'unsigned long' is at - * least 64 bits anyway. */ - v |= v << 32; - } + v |= v << (sizeof(unsigned long) == 8 ? 32 : 0); p = (aliased_long_t *)decode_table_ptr; n = stores_per_loop;