diff options
author | Joshua MacDonald <josh.macdonald@gmail.com> | 2015-12-26 21:41:27 -0800 |
---|---|---|
committer | Joshua MacDonald <josh.macdonald@gmail.com> | 2015-12-26 21:41:27 -0800 |
commit | cf662894ba5b3847f06fd44dfb91f4733d9196f4 (patch) | |
tree | 43da15828e3c590e0c5ff590fb1f1bda7edca957 | |
parent | 24def2845b33800718d2b3f70b8cf575c42da918 (diff) |
Matches 3.0.10 behavior, approximately, insofar as stream.srcwin_cksum_pos; TODOs added
-rw-r--r-- | xdelta3/xdelta3-main.h | 2 | ||||
-rw-r--r-- | xdelta3/xdelta3.c | 9 |
2 files changed, 9 insertions, 2 deletions
diff --git a/xdelta3/xdelta3-main.h b/xdelta3/xdelta3-main.h index ede5e73..fac5d8d 100644 --- a/xdelta3/xdelta3-main.h +++ b/xdelta3/xdelta3-main.h | |||
@@ -3324,7 +3324,7 @@ main_input (xd3_cmd cmd, | |||
3324 | main_format_bcnt (stream.total_in, &trdb), | 3324 | main_format_bcnt (stream.total_in, &trdb), |
3325 | main_format_bcnt (stream.total_out, &twdb), | 3325 | main_format_bcnt (stream.total_out, &twdb), |
3326 | main_format_millis (millis, &tm), | 3326 | main_format_millis (millis, &tm), |
3327 | main_format_bcnt (sfile->source_position, &srcpos)); | 3327 | main_format_bcnt (stream.srcwin_cksum_pos, &srcpos)); |
3328 | } | 3328 | } |
3329 | else | 3329 | else |
3330 | { | 3330 | { |
diff --git a/xdelta3/xdelta3.c b/xdelta3/xdelta3.c index 7de4a6f..adb1507 100644 --- a/xdelta3/xdelta3.c +++ b/xdelta3/xdelta3.c | |||
@@ -4395,7 +4395,14 @@ xd3_srcwin_move_point (xd3_stream *stream, usize_t *next_move_point) | |||
4395 | } | 4395 | } |
4396 | else | 4396 | else |
4397 | { | 4397 | { |
4398 | target_cksum_pos = absolute_input_pos + stream->src->max_winsize / 2; | 4398 | /* TODO: The addition of 2 blocks here is arbitrary. Do a |
4399 | * better job of stream alignment based on observed source copy | ||
4400 | * addresses, and when both input sizes are known, the | ||
4401 | * difference in size. | ||
4402 | */ | ||
4403 | target_cksum_pos = absolute_input_pos + | ||
4404 | stream->src->max_winsize / 2 + | ||
4405 | /*stream->src->blksize * 2*/; | ||
4399 | target_cksum_pos &= ~stream->src->maskby; | 4406 | target_cksum_pos &= ~stream->src->maskby; |
4400 | } | 4407 | } |
4401 | 4408 | ||