Lasse Collin
33be3c0e24
Subblock decoder: Don't exit the main loop in decode_buffer()
...
too early if we hit End of Input while decoding a Subblock of
type Repeating Data. To keep the loop termination condition
elegant, the order of enumerations in coder->sequence were
changed.
To keep the case-labels in roughly the same order as the
enumerations in coder->sequence, large chunks of code was
moved around. This made the diff big and ugly compared to
the amount of the actual changes made.
2008-01-17 18:56:53 +02:00
Lasse Collin
b254bd97b1
Fix wrong too small size of argument unfiltered_max
...
in ia64_coder_init(). It triggered assert() in
simple_coder.c, and could have caused a buffer overflow.
This error was probably a copypaste mistake, since most
of the simple filters use unfiltered_max = 4.
2008-01-17 17:39:42 +02:00
Lasse Collin
8f5794c8f1
Added --delta to the output of "lzma --help".
2008-01-17 17:27:45 +02:00
Lasse Collin
f88590e001
Fix Subblock docoder: If Subblock filter was used with known
...
Uncompressed Size, and the last output byte was from RLE,
the code didn't stop decoding as it should have done.
2008-01-17 13:14:20 +02:00
Lasse Collin
bc0b945ca3
Tiny non-technical edits to file-format.txt.
2008-01-16 16:33:37 +02:00
Lasse Collin
7599bb7064
Plugged a memory leak in stream_decoder.c.
2008-01-16 14:48:04 +02:00
Lasse Collin
0b58153931
Added memory leak detection to lzmadec.c.
2008-01-16 14:47:27 +02:00
Lasse Collin
5b5b13c7bb
Added lzma_memlimit_count().
2008-01-16 14:46:50 +02:00
Lasse Collin
19389f2b82
Added ARRAY_SIZE(array) macro.
2008-01-16 14:31:44 +02:00
Lasse Collin
9bc33a54cb
Make Uncompresed Size validation more strict
...
in alone_decoder.c.
2008-01-16 13:27:03 +02:00
Lasse Collin
01d71d60b7
Free the allocated memory in lzmadec if debugging is
...
enabled. This should make it possible to detect possible
memory leaks with Valgrind.
2008-01-15 17:46:59 +02:00
Lasse Collin
8235e6e5b2
Fix memory leaks from test_block_header.c.
2008-01-15 16:25:38 +02:00
Lasse Collin
f10fc6a69d
Use fastpos.h when encoding LZMA dictionary size in
...
Filter Flags encoder.
2008-01-15 14:23:35 +02:00
Lasse Collin
e5728142a2
Revised the fastpos code. It now uses the slightly faster
...
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-15 14:02:22 +02:00
Lasse Collin
10437b5b56
Added bsr.h.
2008-01-15 13:32:13 +02:00
Lasse Collin
f3c88e8b8d
Fixed assembler detection in configure.ac, and added
...
detection for x86_64.
2008-01-15 13:29:14 +02:00
Lasse Collin
54ec204f58
Omit invalid space from printf() format string
...
in price_table_gen.c.
2008-01-15 12:20:41 +02:00
Lasse Collin
01b4b19f49
Removed a few unused macros from lzma_common.h.
2008-01-15 09:54:34 +02:00
Lasse Collin
19bd7f3cf2
Fix a typo in lzma_encoder.c.
2008-01-15 08:37:42 +02:00
Lasse Collin
9f9b198301
Convert bittree_get_price() and bittree_reverse_get_price()
...
from macros to inline functions.
2008-01-15 08:36:25 +02:00
Lasse Collin
78e85cb1a7
Fix CRC code in case --enable-small is used.
2008-01-15 07:44:59 +02:00
Lasse Collin
949d4346e2
Fix typo in test_index.c.
2008-01-15 07:41:39 +02:00
Lasse Collin
d13d693155
Added precomputed range coder probability price table.
2008-01-15 07:40:21 +02:00
Lasse Collin
362dc3843b
Remove RC_BUFFER_SIZE from lzma_encoder_private.h
...
and replace it with a sanity check.
2008-01-14 13:42:43 +02:00
Lasse Collin
e22b37968d
Major changes to LZ encoder, LZMA encoder, and range encoder.
...
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-14 13:39:54 +02:00
Lasse Collin
b59ef39737
Added one assert() to process.c of the command line tool.
2008-01-14 13:34:29 +02:00
Lasse Collin
9547e734a0
Don't use coder->lz.stream_end_was_reached in assertions
...
in match_c.h.
2008-01-14 12:09:52 +02:00
Lasse Collin
3e09e1c058
In lzma_read_match_distances(), don't use
...
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-14 12:08:02 +02:00
Lasse Collin
a670fec802
Small LZMA_SYNC_FLUSH fixes to Block and Single-Stream encoders.
2008-01-14 11:56:41 +02:00
Lasse Collin
3599dba957
More fixes to LZMA decoder's flush marker handling.
2008-01-14 11:54:56 +02:00
Lasse Collin
f73c2ab607
Eliminate lzma_lz_encoder.must_move_pos. It's needed
...
only in one place which isn't performance criticial.
2008-01-10 17:13:42 +02:00
Lasse Collin
382808514a
Define HAVE_ASM_X86 when x86 assembler optimizations are
...
used. This #define will be useful for inline assembly.
2008-01-09 20:05:57 +02:00
Lasse Collin
0e70fbe403
Added good-single-none-empty_3.lzma and
...
bad-single-none-empty.lzma.
2008-01-09 12:06:46 +02:00
Lasse Collin
379fbbe84d
Take advantage of return_if_error() in block_decoder.c.
2008-01-08 23:11:59 +02:00
Lasse Collin
97d5fa8207
Updated tests/files/README.
2008-01-08 23:10:57 +02:00
Lasse Collin
3bb9bb3109
Added test files with empty Compressed Data.
2008-01-08 23:05:40 +02:00
Lasse Collin
7054c5f588
Fix decoding of Blocks that have only Block Header.
2008-01-08 22:58:42 +02:00
Lasse Collin
753e4d95cd
Added good-single-subblock_implicit.lzma.
2008-01-08 22:27:46 +02:00
Lasse Collin
faeac7b7ac
Disable CRC32 from Block Headers when --check=none
...
has been specified.
2008-01-08 18:50:30 +02:00
Lasse Collin
a751126dbb
Fixed encoding of empty files. Arguments to is_size_valid()
...
were in wrong order in block_encoder.c.
2008-01-08 13:36:29 +02:00
Lasse Collin
9080267603
Added a few test files.
2008-01-08 13:35:36 +02:00
Lasse Collin
b4943ccf73
Avoid using ! in test_files.sh, because that doesn't work
...
with some ancient /bin/sh versions.
2008-01-08 12:29:58 +02:00
Lasse Collin
e2417b2b91
More pre-C99 inttypes.h compatibility fixes. Now the code
...
should work even if the system has no inttypes.h.
2008-01-08 00:48:30 +02:00
Lasse Collin
5d227e51c2
Updated fi.po although it's currently pretty much crap.
2008-01-07 23:25:32 +02:00
Lasse Collin
c7189d981a
Test for $GCC = yes instead of if it is non-empty. This
...
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-07 23:14:25 +02:00
Lasse Collin
3dbbea82b7
Added test_files.sh to tests/Makefile.am so it gets
...
included in the tarball with "make dist".
2008-01-07 21:49:41 +02:00
Lasse Collin
2fd2d18154
Cosmetic edit to test_files.sh.
2008-01-07 18:22:24 +02:00
Lasse Collin
9a71d57310
Added tests/files/README.
2008-01-07 18:09:44 +02:00
Lasse Collin
47f48fe993
Tell in COPYING that everything in tests/files is
...
public domain.
2008-01-07 14:20:57 +02:00
Lasse Collin
3502b3e1d0
Cleaned up the tests/files directory.
2008-01-07 14:19:05 +02:00