X-Git-Url: https://wimlib.net/git/?a=blobdiff_plain;f=src%2Fxpress-decomp.c;h=89e006d3b22bbae21e69ab4c52d5579f80319891;hb=9ec9035ce7e154dae21acad0328374c5d3b26e2f;hp=267720e2a8327e2fd5bfcb45a9ed3651410f6f09;hpb=885632f08c75c1d7bb5d25436231c78f6ad7e0c0;p=wimlib diff --git a/src/xpress-decomp.c b/src/xpress-decomp.c index 267720e2..89e006d3 100644 --- a/src/xpress-decomp.c +++ b/src/xpress-decomp.c @@ -2,23 +2,26 @@ * xpress-decomp.c * * XPRESS decompression routines. + */ + +/* * * Copyright (C) 2012 Eric Biggers * - * wimlib - Library for working with WIM files + * This file is part of wimlib, a library for working with WIM files. * - * This library is free software; you can redistribute it and/or modify it under - * the terms of the GNU Lesser General Public License as published by the Free - * Software Foundation; either version 2.1 of the License, or (at your option) any - * later version. + * 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. * - * This library 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 Lesser General Public License for more details. + * 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 Lesser General Public License along - * with this library; if not, write to the Free Software Foundation, Inc., 59 - * Temple Place, Suite 330, Boston, MA 02111-1307 USA + * You should have received a copy of the GNU General Public License + * along with wimlib; if not, see http://www.gnu.org/licenses/. */ @@ -66,7 +69,7 @@ * the end. Otherwise Microsoft's software will fail to decompress the * XPRESS-compressed data. * - * Howeve, WIMLIB's decompressor in xpress-decomp.c currently does not care if + * Howeve, wimlib's decompressor in xpress-decomp.c currently does not care if * this extra symbol is there or not. */ @@ -77,9 +80,6 @@ #define XPRESS_DECOMP #include "decomp.h" -#include "huffman.h" - - /* Decodes @huffsym, a value >= XPRESS_NUM_CHARS, that is the header of a match. * */ @@ -138,15 +138,14 @@ static int xpress_decode_match(int huffsym, uint window_pos, uint window_len, if (window_pos + match_len > window_len) { ERROR("XPRESS dedecompression error: match of length %d " - "bytes overflows window\n", match_len); + "bytes overflows window", match_len); return -1; } if (match_src < window) { ERROR("XPRESS decompression error: match of length %d bytes " - "references data before window (match_offset = " - "%d, window_pos = %d)\n", match_len, - match_offset, window_pos); + "references data before window (match_offset = %d, " + "window_pos = %d)", match_len, match_offset, window_pos); return -1; } @@ -205,8 +204,8 @@ int xpress_decompress(const void *__compressed_data, uint compressed_len, compressed_data = __compressed_data; lens_p = lens; - DEBUG2("compressed_len = %d, uncompressed_len = %d\n", - compressed_len, uncompressed_len); + DEBUG2("compressed_len = %d, uncompressed_len = %d", + compressed_len, uncompressed_len); /* XPRESS uses only one Huffman tree. It contains 512 symbols, and the * code lengths of these symbols are given literally as 4-bit integers @@ -227,7 +226,7 @@ int xpress_decompress(const void *__compressed_data, uint compressed_len, return ret; init_input_bitstream(&istream, compressed_data + XPRESS_NUM_SYMBOLS / 2, - compressed_len - XPRESS_NUM_SYMBOLS / 2); + compressed_len - XPRESS_NUM_SYMBOLS / 2); return xpress_decompress_literals(&istream, uncompressed_data, uncompressed_len, lens, decode_table);