gout

A static git page generator
git clone https://git.bracken.jp/gout.git
Log | Files | Refs | README | LICENSE

commit ec29539cb426d1ae6a6c8e454f54a80769a45d9e
parent c34192d5e5ace50321cd3647a93d1e841e7a2816
Author: Chris Bracken <chris@bracken.jp>
Date:   Tue, 17 Feb 2026 17:48:12 +0900

commit: make summary an owned copy

Diffstat:
Msrc/git/commit.c | 6++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/git/commit.c b/src/git/commit.c @@ -16,7 +16,7 @@ struct GitCommit { char* oid; char* parentoid; - const char* summary; + char* summary; const char* message; time_t commit_time; int commit_timezone_offset; @@ -49,7 +49,8 @@ GitCommit* gitcommit_create(const git_oid* oid, git_repository* repo) { git_commit_parent_id(commit->commit, 0)); // Set commit summary, message. - commit->summary = git_commit_summary(commit->commit); + const char* summary = git_commit_summary(commit->commit); + commit->summary = summary ? estrdup(summary) : NULL; commit->message = git_commit_message(commit->commit); // Get commit time, tz offset. @@ -138,6 +139,7 @@ void gitcommit_free(GitCommit* commit) { } free(commit->oid); free(commit->parentoid); + free(commit->summary); for (size_t i = 0; i < commit->deltas_len; i++) { gitdelta_free(commit->deltas[i]); commit->deltas[i] = NULL;