On 2024-10-11 20:34, Wolfgang Müller wrote: > Whilst git-shortlog(1) does not explicitly need any repository > information when run without reference to one, it still parses some of > its arguments with parse_revision_opt() which assumes that the hash > algorithm is set. However, in c8aed5e8da (repository: stop setting SHA1 > as the default object hash, 2024-05-07) we stopped setting up a default > hash algorithm and instead require commands to set it up explicitly. > > This was done for most other commands like in ab274909d4 (builtin/diff: > explicitly set hash algo when there is no repo, 2024-05-07) but was > missed for builtin/shortlog, making git-shortlog(1) segfault outside of > a repository when given arguments like --author that trigger a call to > parse_revision_opt(). > > Fix this for now by explicitly setting the hash algorithm to SHA1. > > Signed-off-by: Wolfgang Müller <wolf@oriole.systems> > --- > I think there is a much cleaner patch here if one would look at > disentangling the parsing machinery split between cmd_shortlog() and > parse_revision_opt() such that the latter is only called if there is an > actual repository, but I'm not at all familiar enough with the codebase > to do that. Like the commit says some other commands were fixed like > this as well, so I thought to send this patch your way. Was this topic maybe missed? It's not a critical fix but would solve a segfault that is pretty easy for a user to trigger. Thanks! -- Wolf