diff options
author | Elijah Newren <newren@gmail.com> | 2024-01-13 04:26:13 +0000 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2024-01-18 19:10:11 -0800 |
commit | 1c5bc6971e28c581b17b812cbbd1f09e39f0bb63 (patch) | |
tree | 35205f57d7ae32ab60600d29dcc88857fea51853 /t/unit-tests/t-basic.c | |
parent | ec583449067bab5b800ecc63926f35c9dae96fa1 (diff) |
diffcore-delta: avoid ignoring final 'line' of file
hash_chars() would hash lines to integers, and store them in a spanhash,
but cut lines at 64 characters. Thus, whenever it reached 64 characters
or a newline, it would create a new spanhash. The problem is, the final
part of the file might not end 64 characters after the previous 'line'
and might not end with a newline. This could, for example, cause an
85-byte file with 12 lines and only the first character in the file
differing to appear merely 23% similar rather than the expected 97%.
Ensure the last line is included, and add a testcase that would have
caught this problem.
Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 't/unit-tests/t-basic.c')
0 files changed, 0 insertions, 0 deletions