Commit Briefs
fix a use-after-free in get_changed_paths() in got and tog
Once the parent commit is closed the tree_id1 pointer is no longer valid, but the pointer was still being used. Make a deep copy to fix this issue.
switch from SIMPLEQ to equivalent STAILQ macros
The singly-linked tail queue macros were added to OpenBSD 6.9 and are more widely available on other systems. ok stsp
Fix strftime(3) short buffer checks
strftime(3) returns 0 if the buffer was too short to write the complete string (including NUL) and will never return more than maxsize-1. ok stsp
tog: fix behaviour when 'n' is pressed before a search was started with '/'
reported by + ok naddy
Add a refs argument to got_repo_match_object_id(), replacing 'resolve_tags'
Make use of this where possible to avoid re-reading references from disk. ok naddy
make use of reflist object id maps in tog log and diff views
This is a partial fix for performance issues when browsing the FreeBSD Git repo, which can easily contain more than 4000 references. ok naddy
do not mix up repositories if tog's -r option is used inside a work tree
with input from and ok naddy
use size_t for loop indices to avoid signedness warnings; by emaste@freebsd
Same change as 16aeacf7088d, for subdirectories other than lib/
replace unprintable characters with '.' before passing them to curses
Otherwise, ncurses will replace them with some printable representation whose width we can't predict, and wunctrl() fails to return the replacement for 0x80..0x9f. ok stsp