aboutsummaryrefslogtreecommitdiff
path: root/src/liblzma/rangecoder/range_encoder.h (follow)
AgeCommit message (Collapse)AuthorFilesLines
2008-08-28Sort of garbage collection commit. :-| Many things are stillLasse Collin1-78/+14
broken. API has changed a lot and it will still change a little more here and there. The command line tool doesn't have all the required changes to reflect the API changes, so it's easy to get "internal error" or trigger assertions.
2008-06-01Fix a buffer overflow in the LZMA encoder. It was due to myLasse Collin1-178/+205
misunderstanding of the code. There's no tiny fix for this problem, so I also cleaned up the code in general. This reduces the speed of the encoder 2-5 % in the fastest compression mode ("lzma -1"). High compression modes should have no noticeable performance difference. This commit breaks things (especially LZMA_SYNC_FLUSH) but I will fix them once the new format and LZMA2 has been roughly implemented. Plain LZMA won't support LZMA_SYNC_FLUSH at all and won't be supported in the new .lzma format. This may change still but this is what it looks like now. Support for known uncompressed size (that is, LZMA or LZMA2 without EOPM) is likely to go away. This means there will be API changes.
2008-04-24Use 64-bit integer as range encoder's cache size. This fixes aLasse Collin1-1/+1
theoretical data corruption, which should be very hard to trigger even intentionally.
2008-01-15Convert bittree_get_price() and bittree_reverse_get_price()Lasse Collin1-33/+43
from macros to inline functions.
2008-01-15Added precomputed range coder probability price table.Lasse Collin1-11/+10
2008-01-14Major changes to LZ encoder, LZMA encoder, and range encoder.Lasse Collin1-84/+33
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.
2007-12-09Imported to git.Lasse Collin1-0/+317