aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2008-01-16Added ARRAY_SIZE(array) macro.Lasse Collin1-0/+4
2008-01-16Make Uncompresed Size validation more strictLasse Collin1-1/+2
in alone_decoder.c.
2008-01-15Free the allocated memory in lzmadec if debugging isLasse Collin1-0/+7
enabled. This should make it possible to detect possible memory leaks with Valgrind.
2008-01-15Fix memory leaks from test_block_header.c.Lasse Collin1-2/+17
2008-01-15Use fastpos.h when encoding LZMA dictionary size inLasse Collin1-21/+19
Filter Flags encoder.
2008-01-15Revised the fastpos code. It now uses the slightly fasterLasse Collin10-47/+746
table-based version from LZMA SDK 4.57. This should be fast on most systems. A simpler and smaller alternative version is also provided. On some CPUs this can be even a little faster than the default table-based version (see comments in fastpos.h), but on most systems the table-based code is faster.
2008-01-15Added bsr.h.Lasse Collin2-0/+62
2008-01-15Fixed assembler detection in configure.ac, and addedLasse Collin1-16/+16
detection for x86_64.
2008-01-15Omit invalid space from printf() format stringLasse Collin1-1/+1
in price_table_gen.c.
2008-01-15Removed a few unused macros from lzma_common.h.Lasse Collin1-6/+2
2008-01-15Fix a typo in lzma_encoder.c.Lasse Collin1-1/+1
2008-01-15Convert bittree_get_price() and bittree_reverse_get_price()Lasse Collin3-55/+56
from macros to inline functions.
2008-01-15Fix CRC code in case --enable-small is used.Lasse Collin5-6/+4
2008-01-15Fix typo in test_index.c.Lasse Collin1-1/+1
2008-01-15Added precomputed range coder probability price table.Lasse Collin7-17/+153
2008-01-14Remove RC_BUFFER_SIZE from lzma_encoder_private.hLasse Collin1-2/+4
and replace it with a sanity check.
2008-01-14Major changes to LZ encoder, LZMA encoder, and range encoder.Lasse Collin4-140/+206
These changes implement support for LZMA_SYNC_FLUSH in LZMA encoder, and move the temporary buffer needed by range encoder from lzma_range_encoder structure to lzma_lz_encoder.
2008-01-14Added one assert() to process.c of the command line tool.Lasse Collin1-0/+1
2008-01-14Don't use coder->lz.stream_end_was_reached in assertionsLasse Collin1-2/+0
in match_c.h.
2008-01-14In lzma_read_match_distances(), don't useLasse Collin1-3/+3
coder->lz.stream_end_was_reached. That variable will be removed, and the check isn't required anyway. Rearrange the check so that it doesn't make one to think that there could be an integer overflow.
2008-01-14Small LZMA_SYNC_FLUSH fixes to Block and Single-Stream encoders.Lasse Collin2-2/+3
2008-01-14More fixes to LZMA decoder's flush marker handling.Lasse Collin1-22/+30
2008-01-10Eliminate lzma_lz_encoder.must_move_pos. It's neededLasse Collin2-8/+2
only in one place which isn't performance criticial.
2008-01-09Define HAVE_ASM_X86 when x86 assembler optimizations areLasse Collin1-1/+4
used. This #define will be useful for inline assembly.
2008-01-09Added good-single-none-empty_3.lzma andLasse Collin3-0/+6
bad-single-none-empty.lzma.
2008-01-08Take advantage of return_if_error() in block_decoder.c.Lasse Collin1-16/+7
2008-01-08Updated tests/files/README.Lasse Collin1-6/+9
2008-01-08Added test files with empty Compressed Data.Lasse Collin4-0/+6
2008-01-08Fix decoding of Blocks that have only Block Header.Lasse Collin1-23/+14
2008-01-08Added good-single-subblock_implicit.lzma.Lasse Collin2-0/+2
2008-01-08Disable CRC32 from Block Headers when --check=noneLasse Collin1-1/+1
has been specified.
2008-01-08Fixed encoding of empty files. Arguments to is_size_valid()Lasse Collin1-1/+1
were in wrong order in block_encoder.c.
2008-01-08Added a few test files.Lasse Collin6-3/+18
2008-01-08Avoid using ! in test_files.sh, because that doesn't workLasse Collin1-1/+3
with some ancient /bin/sh versions.
2008-01-08More pre-C99 inttypes.h compatibility fixes. Now the codeLasse Collin5-29/+6
should work even if the system has no inttypes.h.
2008-01-07Updated fi.po although it's currently pretty much crap.Lasse Collin1-6/+6
2008-01-07Test for $GCC = yes instead of if it is non-empty. ThisLasse Collin1-1/+1
way it is possible to use ac_cv_c_compiler_gnu=no to force configure to think it is using non-GNU C compiler.
2008-01-07Added test_files.sh to tests/Makefile.am so it getsLasse Collin1-1/+1
included in the tarball with "make dist".
2008-01-07Cosmetic edit to test_files.sh.Lasse Collin1-2/+2
2008-01-07Added tests/files/README.Lasse Collin1-0/+108
2008-01-07Tell in COPYING that everything in tests/files isLasse Collin1-1/+2
public domain.
2008-01-07Cleaned up the tests/files directory.Lasse Collin3-0/+0
2008-01-07Added test_files.sh to test decoding of the files inLasse Collin2-1/+43
the tests/files directory. It doesn't test the malicious files yet.
2008-01-07Updated README regarding the assembler optimizations.Lasse Collin1-5/+5
2008-01-07Updated THANKS.Lasse Collin1-0/+1
2008-01-06Cosmetic changes to configure.ac.Lasse Collin1-8/+6
2008-01-06Automatically disable assembler code on Darwin x86.Lasse Collin1-2/+15
Darwin has different ABI than GNU+Linux and Solaris, thus the assembler code doesn't assemble on Darwin.
2008-01-06With printf(), use PRIu64 with a cast to uint64_t insteadLasse Collin2-8/+11
of %zu, because some pre-C99 libc versions don't support %zu.
2008-01-06Introduced compatibility with systems that have pre-C99Lasse Collin13-35/+106
or no inttypes.h. This is useful when the compiler has good enough support for C99, but libc headers don't. Changed liblzma API so that sys/types.h and inttypes.h have to be #included before #including lzma.h. On systems that don't have C99 inttypes.h, it's the problem of the applications to provide the required types and macros before #including lzma.h. If lzma.h defined the missing types and macros, it could conflict with third-party applications whose configure has detected that the types are missing and defined them in config.h already. An alternative would have been introducing lzma_uint32 and similar types, but that would just be an extra pain on modern systems.
2008-01-05Fix typo in comment (INT64_MAX -> UINT64_MAX).Lasse Collin1-1/+1
2008-01-05Rearranged testing of GCC-specific flags.Lasse Collin1-10/+23
2008-01-05Another bug fix for flush marker detection.Lasse Collin1-1/+9
2008-01-04Fix stupid bugs in flush marker detection.Lasse Collin1-3/+4
2008-01-04Added support for flush marker, which will be in filesLasse Collin2-117/+104
that use LZMA_SYNC_FLUSH with encoder (not implemented yet). This is a new feature in the raw LZMA format, which isn't supported by old decoders. This shouldn't be a problem in practice, since lzma_alone_encoder() will not allow LZMA_SYNC_FLUSH, and thus not allow creating files on decodable with old decoders. Made lzma_decoder.c to require tab width of 4 characters if one wants to fit the code in 80 columns. This makes the code easier to read.
2008-01-04Moved range decoder initialization (reading the firstLasse Collin2-63/+66
five input bytes) from LZMA decoder to range decoder header. Did the same for decoding of direct bits.
2007-12-14Added a note to README that --disable-assemblerLasse Collin1-0/+4
must be used on Darwin.
2007-12-14Use the filename suffix .S instead of .s for assembler filesLasse Collin3-2/+2
so that the preprocessor removes the /* */ style comments, which are not supported by some non-GNU assemblers (Solaris) that otherwise work with this code.
2007-12-14Fixed wrong symbol name in crc64_x86.s.Lasse Collin1-1/+1
2007-12-14Use .globl instead of .global in x86 assembler code forLasse Collin2-2/+2
better portability. Still needs fixing the commenting.
2007-12-13Fixed a few short options that take an argument.Lasse Collin1-1/+1
short_opts[] was missing colons to indicate required argument. Thanks to Fabio Pedretti for the bug report.
2007-12-11Removed uncompressed size tracking from Delta encoder too.Lasse Collin1-18/+3
2007-12-11Remove uncompressed size tracking from the filter encoders.Lasse Collin3-80/+12
It's not strictly needed there, and just complicates the code. LZ encoder never even had this feature. The primary reason to have uncompressed size tracking in filter encoders was validating that the application doesn't give different amount of input that it had promised. A side effect was to validate internal workings of liblzma. Uncompressed size tracking is still present in the Block encoder. Maybe it should be added to LZMA_Alone and raw encoders too. It's simpler to have one coder just to validate the uncompressed size instead of having it in every filter.
2007-12-11Get rid of no-NLS gnulib. I don't know how to get itLasse Collin3-11/+5
working with Automake. People who want smaller lzmadec should use --disable-nls on non-GNU systems.
2007-12-11Fixed a typo in tests/Makefile.am which preventedLasse Collin1-1/+1
building the tests if gnulib was needed.
2007-12-11Fixed wrong type of flags_size in Subblock encoder.Lasse Collin1-1/+1
2007-12-10Bumped version number to 4.42.3alpha.Lasse Collin2-2/+2
2007-12-10Disabled some unneeded warnings and made "make dist" work.larhzu/v4.42.2alphaLasse Collin3-32/+33
2007-12-09Added LZMA_SYNC_FLUSH support to the Copy filter.Lasse Collin1-35/+57
2007-12-09Added missing LZMA_API to the C versions of the CRC functions.Lasse Collin2-2/+2
The x86 assembler versions were already OK.
2007-12-09* tests/test_block_header.c (test3): Remove duplicate initializer.Jim Meyering2-2/+1
2007-12-09Take advantage of return_if_error() macro in more places.Lasse Collin7-138/+63
Cleaned Subblock filter's initialization code too.
2007-12-09Added a bunch of .lzma test files.Lasse Collin17-0/+0
2007-12-09Re-enabled the security checks in Subblock decoderLasse Collin1-3/+3
that were disabled for debugging reasons.
2007-12-09Fixed the tests to build with -Werror.Lasse Collin6-12/+12
2007-12-09Imported to git.Lasse Collin240-0/+42513