Commit Briefs

Thomas Adam

show parent commit IDs of merge commits in the tog diff view

ok tracey


Thomas Adam

tog: make blame view work

Fix the thread comparison with tog's blame view.


Thomas Adam

ncurses: only look for widechar version

When checking for ncurses, only check against the widechar version of the library, otherwise the code won't work correctly, despite it compiling properly. Helped by Thomas Dickey.


Thomas Adam

portable: initial Linux compilation

This commit modifies the GoT main branch to be able to compile it under linux.


Stefan Sperling

tog: use sched_yield(2) instead of pthread_yield(3) for portability

pthread_yield(3) is an optional POSIX 2001 extension while sched_yield(2) is part of POSIX 2008. On OpenBSD they are actually equivalent, albeit not documented as such. Using sched_yield(2) helps the -portable version. Patch by Quentin Rameau



Christian Weisgerber

tog: when jumping to the bottom of the log view, go from the tail backwards

ok jasper


Christian Weisgerber

tog: jump directly to first log item instead of traversing the list

ok tracey


Christian Weisgerber

tog: add support for navigating to first/last line of tree and ref views

ok stsp


Christian Weisgerber

tog: add support for navigating to first/last line of blame view

ok tracey stsp


Stefan Sperling

make tog block other keys except Backspace after End/G is pressed

This should avoid unexpected behaviour resulting from unrelated key presses messing with the log view's state variables. Pointed out by tracey, and also discussed with jasper. ok tracey



Stefan Sperling

make tog ignore Ctrl+L and B while loading all commits

Otherwise tog gets into a funky non-recoverable state if these keys are pressed instead of Backspace while commits are loading. bug found by + ok tracey


Stefan Sperling

remove the 'ctrl+u' shortcut in favour of just 'g' as alias for 'Home'

Our use of ctrl+u was not consistent with vi(1) after all. Discussed with naddy, tb, and jasper on gameoftrees@



Jasper Lievisse Adriaanse

tog: add support for navigating to first/last item of log and diff views

The keybindings that we settled on are Home, Ctrl-u and g to go to the first item and End, G to go to the last. This resembles those commonly found elsewhere, eg vi/less. discussed with and ok stsp


Stefan Sperling

use gmtime_r(3) instead of localtime_r(3) to display time in UTC as intended

Problem noticed by naddy due to failing regress tests at midnight, and then analyzed with additional help from millert. ok naddy


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.





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


Stefan Sperling

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

ok tracey


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


Stefan Sperling

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

reported by + ok naddy