diff options
author | josh.macdonald <jmacd@users.noreply.github.com> | 2008-09-07 09:42:31 +0000 |
---|---|---|
committer | josh.macdonald <jmacd@users.noreply.github.com> | 2008-09-07 09:42:31 +0000 |
commit | b8630ef77dfe76039b3c54882750d694b81a13bd (patch) | |
tree | f11268362994adce782753592783a8e7ced1f318 /xdelta3/xdelta3.swig | |
parent | 16d481af9d05ece1a76c6f828ef4a64d1f039434 (diff) |
Fixes two merge bugs:
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.
Diffstat (limited to 'xdelta3/xdelta3.swig')
0 files changed, 0 insertions, 0 deletions