From 51d4b69ff1acb37cd9e87dee5c36a04f25b7a09d Mon Sep 17 00:00:00 2001 From: Bryce Kwon Date: Sat, 31 Oct 2026 15:27:57 -0700 Subject: Release only finished walks, never cgit's mailmap release_revisions frees revs->mailmap, and the log page points it at the static list cgit_mailmap returns, so every log of a repository with enable-mailmap aborted. A walk whose setup failed holds commits that are already freed, so releasing it could free them twice. --- source/ui-patch.c | 1 - 1 file changed, 1 deletion(-) (limited to 'source/ui-patch.c') diff --git a/source/ui-patch.c b/source/ui-patch.c index 3c76255..0fa9a2e 100644 --- a/source/ui-patch.c +++ b/source/ui-patch.c @@ -74,7 +74,6 @@ void cgit_print_patch(const char *new_rev, const char *old_rev, const char *pref rev.max_count = ctx.cfg.max_patch_count; // The headers wait until the walk has started. if (cgit_prepare_walk(&rev)) { - release_revisions(&rev); strvec_clear(&rev_argv); return; } -- cgit