summaryrefslogtreecommitdiff
path: root/xdelta3/xdelta3.h
AgeCommit message (Collapse)Author
2010-11-07Whitespace cleanups, commentsjosh.macdonald
2010-02-15Misc whitespace changes.josh.macdonald
2010-02-07Implement srcwin_maxsz in xd3_source_match_setup(), which preventsjosh.macdonald
the encoder from seeking backwards further than this parameter. This was supposed to be implemented long ago, but was especially problematic in the recent release, which implements source-from-FIFO.
2009-11-08Rewrote main_set_source() to delay deciding lru_size (effectivelyjosh.macdonald
option_srcwinsz) until after decompression state is known. Working but definitely needs more testing.
2009-11-05Cleanups in xd3_decode_output_halfinst() and xd3_decode_emit().josh.macdonald
2009-11-03Implement (and manually test) main_getblk_func() using FIFO instead ofjosh.macdonald
LRU for non-seekable sources (always, was not previously for the decoder, which caused problems).
2009-11-03Fixes for issue 94.josh.macdonald
2009-10-2864-bit xoff_t definitions.josh.macdonald
2009-10-25Adds xd3_set_source_and_size.josh.macdonald
2009-10-25Eliminates xd3_source->size, which is an _API Change_. Adds a new ↵josh.macdonald
requirement, that source->blocksize be a power-of-2. DOES NOT PASS ALL TESTS.
2009-10-24Move and re-invigorate the regtest, fix 1 harmless compiler warningjosh.macdonald
2009-03-08Testing for issue 79. TODO around xdelta3.c:3926 successful.josh.macdonald
2009-02-12Fixes issue 79, adds more testing.josh.macdonald
2008-09-17Compile with josh.macdonald
-Wconversion -Wsign-compare -Wextra -Wno-unused-parameter in C and C++.
2008-09-13Implement adler32 and appheader for merge command.josh.macdonald
2008-09-07Change "q" to "ll" for portability. Issue 41.josh.macdonald
2008-09-07Fixes two merge bugs:josh.macdonald
1. The whole_state struct now keeps an array of window sizes so that during reconstruction it can use the same window size as the target delta. The code was previously using dec_tgtlen, which was the window size of the last target delta window. 2. xd3_merge_copy_source(), which applys a source-copy instruction during merge was not properly translating target-copy instructions in the target. The solution here is SLOW and INEFFICIENT, but it at least allows the tests to pass. A big TODO here is to improve the algorithm: it has a potentially O(N) recursion for each target-copy that it sees, and the naive approach also can produce duplicate adds.
2008-09-05Solves the issue reported in Issue 36. More merge tests now pass.josh.macdonald
2008-08-16Fixes a error in the test. Merge test passes...???josh.macdonald
2008-07-03Test for encode/decode w/ single first-byte difference. Uncovered a couple ofjosh.macdonald
incorrect assertions in xdelta3 proper. More tests coming...
2008-04-22Install a proper fix for the looping problem in issue 70. Needs better testingjosh.macdonald
but good for now.
2008-04-20It's plausible that this merge code actually works; untested.josh.macdonald
2008-04-09Add mechanism for processing merge arguments in order, memoryjosh.macdonald
management for xd3_whole_target structures being passed between arguments-processing and main merge_output function.
2008-03-31Implement more of "xdelta3 merge" command. Compile fixes.josh.macdonald
Work on xdelta3-regtest.py.
2008-02-11Can't explain how the usize_t->uint32_t changes here solve the problemjosh.macdonald
described by issue 61, but it's likely the same as issue 66 and I'm going to apply them blindly with TODOs to try and understand it later.
2007-12-28Fix for DJGPP (1/4)?josh.macdonald
2007-12-27Adding more support for "merge" command.josh.macdonald
2007-12-17Call main_input() recursively for main_merge_arguments.josh.macdonald
2007-12-17Patches for Makefile.mingw and xdelta3.h comments, work on "merge"josh.macdonald
command. Fix for new return value in stream_overflow.
2007-12-15Patches for mingw.josh.macdonald
2007-12-14Replace uint with usize_t, more portable.josh.macdonald
2007-12-14Implement UNALIGNED_OK for xd3_small_cksum_update, hoping to fix josh.macdonald
test failure on Xscale/ARM platform.
2007-12-07Patches from A. Mennucc for Debian. Fixing makfile for Cygwinjosh.macdonald
conditional compilation, which is irregular.
2007-12-02Fix recode, recode test.josh.macdonald
2007-11-26The rabin-karp checksum looks better in testing but doesn't reallyjosh.macdonald
seem to improve things in practice. Removed HASH_PRIME.
2007-11-07A few optimizations: -1 (fastest) is faster than before. -fno-builtinjosh.macdonald
makes a difference. New implementation of xd3_forward_match() is written and tested, but not enabled, needs a little more benchmarking.
2007-10-29Restore old secondary djw defaults.josh.macdonald
2007-10-29Add a new COMPLEVEL_1, previous -1 becomes -2.josh.macdonald
2007-10-29Add a new fastest, fastest->faster (-2)josh.macdonald
2007-10-29Use maskby/shiftby when source->size <= source->blksize, which helpsjosh.macdonald
xd3_process_memory() uses.
2007-10-28New xd3_blksize_div() function used everywhere to avoid __umoddi3josh.macdonald
2007-10-28Eliminate calls to __umoddi3 (compiler generated for 64-bit % 32-bit).josh.macdonald
More 80col reformatting.
2007-10-28ENC_FLUSH -> ENC_INSTRjosh.macdonald
2007-10-28Reformat for 80 cols. Allow -S djwN where N is 0-9. Defaultjosh.macdonald
(for -S djw) is 3. -S djw9 enables multi-group huffman for all three sections. -S djw3 enables single-group huffman for all three sections. 1-2 are single data-only, 3-4 are single data+inst, 5-6 are single data+inst+addr, 7, 8, 9 enable multi-group huffman for the three sections in order.
2007-10-28Reformat >80col lines. 32-bit build/test fixes.josh.macdonald
2007-10-27Cleanups on cygwin.josh.macdonald
2007-10-27Fixes for linux build.josh.macdonald
2007-10-21Comments and build with speed_test.ccjosh.macdonald
2007-10-10Removes NODECOMPRESSIZE.josh.macdonald
2007-09-13Fix secondary compression for recode. Now able to reproduce doytchin's josh.macdonald
bug report by recoding an FGK as a DJW.