Commits
- Commit:
f5a254cc6ed65ef2e4fcb0737f4e3730f1a63f92
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
debug fix in diff_data_init_subsection
- Commit:
a32272f07b9bd4e7168bfacf1aa5c385fb081fcf
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
debug: fix missing quote
- Commit:
de7a293922ab041cbe620b0421763d94a13fdf47
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
debug init subsection
- Commit:
9403a358855aa5ba3ec2f3f20943215e1d758496
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
debug fix after changing result->left,right to pointers
- Commit:
c16dde50bb5e92533dcbbc513875d726f0f9dd48
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
allow diff API users to atomize files separately
This is a breaking API change (not that we care about that at this point).
This can avoid redundant work spent on atomizing a file multiple times.
There are use cases where one particular file must be compared to other
files over and over again, such as when blaming file history.
The old API gave access to both versions of the file to the atomizer just
in case a future atomizer implementation needs this. This can still be
achieved by passing a second file via the atomizer's private data pointer.
- Commit:
b756ffd26fea20daeeb98e205cc5655350cad80f
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
C++ function prototype support based on OpenBSD's diff(1) code
- Commit:
2fa08c64136f5b53fb382e8369815ef94ba74ce0
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
optimize diff_atom_same(): if hashes differ, return false
- Commit:
845f35754a8e7935c62f11f48d5dedd536a0615c
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
reflect ignore-whitespace in atom hash
- Commit:
1c7f8717f7d2453699badd65470c3990e8eb5585
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
patience: use qsort
- Commit:
72e4a018d51ae1a3a7c2870aa8dc33cbad2c3143
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
patience: optimize: less diff_atom_cmp() via hash
- Commit:
123481a5f49c26d4316bfac1b8f5599384e17d11
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
fix patience iteration error; also makes dramatically faster
- Commit:
49307efefc236997dc103c7749064d68b089c88f
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
debug: patience: mark unique debug
- Commit:
74ad6a6944bd0588c940347378cc2b713a89ec95
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
diff_atom_cmp: no special case for ignore whitespace when both atoms empty
- Commit:
8b6ce5317fdcb3b74ddbd460aee729f039fe9aa7
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
debug fix: missing space
- Commit:
8be88dfa934d602d1cf29ba3e33162511f08b748
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
cache kd_buf in struct diff_state to avoid repeated allocation + free
- Commit:
41f13ea5f1c5014b2868a2d6165f377fb3df8ce1
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
fix build with PROFILE=1
- Commit:
ca6fcbdce0110845f1195d2d1f5a14ed52a45baf
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
patience: make it easy to switch impls for mark_unique
- Commit:
926387ed74169349bdfa40445192f2b23d815244
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
fix myers_divide max-effort cut, wrong x for backwards coordinate
- Commit:
40fa9110668d1077088748f2be2bf9d5d9813b86
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
add test019 showing max-effort bug
- Commit:
f579bf773398809ee97341a20c91eadd918bc1ad
- From:
- Neels Hofmeyr <neels@hofmeyr.de>
- Date:
debug output fixes
- fix compilation error with DEBUG 1, after moving patience state out of
diff_atom, and after renaming diff_data.d to diff_data.root.
- add some missing newlines.
- also debug "HIT" on a max-effort cut, like when finding a mid snake, which
eases finding all the places where boxes get cut.
- Commit:
ca85e8bc8fc561d9c93cf1c7d59b4ac8a25f94c1
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
fix off-by-one in the off-by-one fix made in bdfcb086
- Commit:
f486745273f4d3c8f6b15d7041d7ab5b3e58b071
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
don't require both + and - chunks in diff_chunk_context_load_change()
- Commit:
bdfcb0869a9b731044cf3b1acc797a805dd8eed9
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
fix off-by-one access beyond mapped file in diff_data_atomize_text_lines_mmap()
Thread 1 received signal SIGSEGV, Segmentation fault.
0x0000013992a89eca in diff_data_atomize_text_lines_mmap (d=0x13b9b455668) \
at /home/stsp/src/got/got/../lib/diff_atomize_text.c:134
134 if (line_end[0] == '\r'
(gdb) p pos
$1 = (const uint8_t *) 0x13be402006d ""
(gdb) p end
$2 = (const uint8_t *) 0x13be4023000 <error: Cannot access memory at \
address 0x13be4023000>
(gdb) p end-1
$3 = (const uint8_t *) 0x13be4022fff ""
(gdb) p line_end
$4 = (const uint8_t *) 0x13be4023000 <error: Cannot access memory at \
address 0x13be4023000>
- Commit:
e6435d8f03f5310b07425d7d0acee7f0b8f52d8c
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
search for prototypes above, not at, the first line touched by the diff chunk
- Commit:
13e2caa3edcc68a62e29b4d5503254cd5bf80b2b
- From:
- Stefan Sperling <stsp@stsp.name>
- Date:
add support for showing function prototypes in unidiff hunk headers