Commit Briefs
avoid allocating too many errors in cmd_info
got_error_path uses get_custom_err to get a statically allocated error allocated on a buffer that's used a ring. This is nice and simple, but the drawback is that thees custom errors shouldn't be used "for too long" because they might get overwritten later. cmd_info is one offender: change it to store a "simple" error and later re-use it to construct the per-path error. OK and tweaks stsp@
tog: keymaps to jump to next/prev file/hunk in the diff
Add () and {} key maps to navigate to the previous and next file or hunk in the diff. This required changing Got's diff API to collect line type metadata in addition to the line offsets already produced as prompted by stsp. ok stsp@
revert previous commit to sync with diff.git changes; it broke the build
../lib/blame.c:344:11: error: implicit declaration of function 'diff_atom_hash_update'
locate_hunk: set mangled earlier for clarity
suggested by stsp@; no functional change.
gotwebd: avoid large allocation per fcgi record
while here also wrap fcgi_send_response to make sure we don't end up trying to send a fcgi record bigger than allowed. ok tracey@
sync files from diff.git 3a15e1807a369c0a7827363eca22c9f1a8598d9c
Rather than realloc in fixed-sized blocks, use the 1.5 * allocated scheme when growing the array. This produces fewer allocations and up to 3x speedup on large diffs. ok stsp@
tog: add n{G,g} key map to jump to line n like less(1)
Available to all views; for example, 99g will navigate to line 99 in the file if in a blame view or the 99th commit if in a log view. Includes improvements suggested by naddy and stsp. ok naddy@
fix logging of fcgi_send_response
as originally intended by tracey@