Commit Briefs
tog: add new log view limit feature to filter commits
Use the & key map to enter a pattern with which to limit the displayed commits to those matching the provided pattern; similar to less(1) and mutt's limit feature. Includes various tweaks from op. ok plus fixes from op@
make got_commit_graph_iter_next use caller-provided storage for the id
and adjust the callers. discussed with and ok stsp@
tog: make headline highlight extend the full view width
In splitscreen mode, make the active view headline highlight extend the full width of view->ncols. While here, format the tree view header like the blame view by moving the index to the path line. suggested by and ok stsp@
CHANGES for 0.75 (tags/0.75)
gotwebd: fix briefs navigation broken in 4a9629420
got_get_repo_commits iterates over the commits and build a queue for later display. My previous memleak fix moved the TAILQ_INSERT_TAIL *before* the logic to exit the loop and so it broke the pagination. This fixes it by delaying the insertion into the queue, but also by moving the check for the "previous" button after we've opened the commit. ok tracey
gotwebd: percent-encode generated URLs
This adds a new helper function `gotweb_link' that outputs an HTML link with the parameter correctly escaped. ok stsp@
gotwebd: add missing closing for div tags_content
reported by the W3C validator.
gotwebd: fix page title
due to an error in the order of the arguments to fcgi_printf that I've introduced last time I touched gotweb_render_header the title is now "/" (or SCRIPT_NAME) and one assets (the safari pinned tab svg) is a funny URL :)
tog: ensure stdin is a tty
This guards against {mis,ab}use such as `tog < /dev/null`. ok plus fix from op@
gotwebd: shrink struct server
keeping GOTWEBD_REPO_CACHESIZE * sizeof(struct cache_repo) inside the struct server makes it too large for imsg on some platforms (linux at least.) Instead, store a pointer and allocate the array when it's received on the child processes. ok stsp@
gotwebd: fix crash handling -D
Avoid crashing by corrupting the pointer instead of writing to it and fix how sym is generated: it shouldn't include the '=' sign. ok / improvement tb@
plug leak in the commit graph iterator
We fail to release the memory for the nodes. To fix it however, we some consumer of the commit graph iterator need to be corrected: the returned pointer is safe to be used only up until the next iter_next call; save a copy it if it's needed afterwards too. ok stsp@
gotwebd: fix usage of the commit graph iter
got_get_repo_commits mixes ids allocated on the heap and the one returned by the iter_next in the same variable, and then even attemp to free it. This is both a leak (we loose the pointer to the previously allocated id) and a possible invalid free since the object id pointer returned by the graph iterator is not to be passed to free(3). part of a bigger diff that's ok stsp@
add missing freaddrinfo
also spotted by valgrind. ok stsp@
release the memory used by the object cache
Leak spotted by valgrind. ok stsp@