Commit Briefs

Stefan Sperling

reorder paragraphs in gotadmin.1 cleanup section

All the special cases are now being explained last.




Omar Polo

gotadmin cleanup: remove redundant pack files

improvements and ok stsp@


Omar Polo

regress/cmdline: fix handling of unexpected success

Diff from James Cook, thanks!


Omar Polo

gather_on_disk_refs(): skip over bad refs

noticed since gotwebd fails when there's a ref.lock file due to a concurrent update. discussed with stsp.




Omar Polo

dropping unnecessary strlen()s

ok jamsek, stsp


Omar Polo

avoid strlen in for(;;)

ok jamsek, stsp


Stefan Sperling

ignore write errors to pack children while closing a repository

If the child has exited for some reason then we won't be able to send a stop message on the pipe. Ignore such errors while we are tearing a repository data structure down. The error should be harmless but can trip up gotwebd when cycling repositories out of its repo cache: gotwebd[29683]: gotweb_render_index: got-portable.git: unexpected end of file


Omar Polo

gotwebd: set chroot path in config_init()

saves a bit fiddling around with ternary operators. sockets_run() will reset the chroot to the default since it calls again config_init(), but at that stage it's not important anymore. ok stsp@


Omar Polo

change got_get_repo_tags' limit argument to size_t

The function already carefully avoids wrapping around zero. While here add a sanity check for limit == 0, like what was previously done for got_get_repo_commits().




Omar Polo

gotwebd.conf: disallow yes/no for booleans

Supporting both "no" and "on" as valid syntax with an opposite meaning could easily result in accidental misconfiguration. Suggested by stsp, tracey agrees. Patch by Josiah Frentsos, thanks!


Omar Polo

drop unused strlen; ok stsp@


Omar Polo

gotwebd: make got_get_repo_commits take a size_t

and while here make sure 0 is rejected. requested by, improvements and ok stsp@



Omar Polo

gotwebd: simplify got_get_repo_commits(): don't traverse all the commits!

In some cases (e.g. limit=1 for DIFF action) we could end up traversing all the commits instead of fetching just the one requested. Needless to say, this makes the diff page extremely slow. reported by and ok stsp@


Omar Polo

got, tog: correctly skip HEAD in build_refs_str()

s[strlen(s)] == '\0' is banally always true, the intent was to not skip refs that starts with "HEAD". style nit / ok stsp@



Omar Polo

gotwebd: drop a few unneeded SRCS

fileindex.c, worktree.c, worktree_open.c and patch.c are not used in gotwebd. ok stsp


Omar Polo

remove proc_ispeer()

unused, and was dropped by the other copies of proc.c; reduces the diff with httpd' proc.c.


Stefan Sperling

make gotd avoid a "failed to push some refs" error from no-op 'git push'

gotsh was sending errors such as "unexpected end of file" and "unexpected flush-pkt" to the client when the client disconnected immediately after receiving reference announcements from the server. As a result, 'git push' with both sides up-to-date would show an obscure error message: = [up to date] main -> main error: failed to push some refs to 'ssh://example.com/git/repo.git Now we see: = [up to date] main -> main Everything up-to-date ok jamsek