Commit Briefs

aa8b5dd032 Stefan Sperling

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.





dbdddfee14 Christian Weisgerber

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


1d0f405485 Stefan Sperling

check for close(2) error in got_repo_close() and propagate errors up

ok tracey


ec6d1a368f Josh Rickmar

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


c0c4acc884 Stefan Sperling

tog: fix behaviour when 'n' is pressed before a search was started with '/'

reported by + ok naddy


56b63ca4ab Stefan Sperling

make fclose(3) failure checks consistent; check 'fclose() == EOF' everywhere

ok millert, naddy



e6b8b8905c Christian Weisgerber

tog log: terminate author field at '>' in case there is no '@'

ok stsp



dae613fa0e Stefan Sperling

remove a comment that is now misleading


d9dff0e5c6 Stefan Sperling

switch reflist to TAILQ; insert elements more efficiently for sorted input

ok naddy


87670572d0 Christian Weisgerber

switch the "tog <path>" log view shortcut to the global reference list, too

ok stsp


84de91061b Stefan Sperling

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


8924d611db Stefan Sperling

switch tog ref view to the global reference list as well

ok naddy


51a10b52c0 Stefan Sperling

make tog store refs and object id map in global variables instead of per view

ok naddy


d2075bf3e6 Stefan Sperling

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


c156c7a4f4 Stefan Sperling

do not mix up repositories if tog's -r option is used inside a work tree

with input from and ok naddy


6059809a13 Stefan Sperling

use size_t for loop indices to avoid signedness warnings; by emaste@freebsd

Same change as 16aeacf7088d, for subdirectories other than lib/


748d5cab9a Christian Weisgerber

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


f5a09613ce Christian Weisgerber

reset tog blame view's scroll position if line count shrinks too much

ok stsp


7f64f4d6a7 Christian Weisgerber

accommodate newer ncurses where panel_userptr() returns a const pointer

ok stsp


826082fed4 Stefan Sperling

use getline(3) instead of fparseln(3) in tog, for better portability

ok millert