]> git.ipfire.org Git - thirdparty/git.git/commitdiff
blame: remove parameter detailed in get_commit_info()
authorHan Young <hanyang.tony@bytedance.com>
Mon, 28 Jul 2025 03:55:48 +0000 (11:55 +0800)
committerJunio C Hamano <gitster@pobox.com>
Tue, 29 Jul 2025 05:02:17 +0000 (22:02 -0700)
The get_commit_info() function accepts a parameter that can be used
to stop the commit parsing early.  However, none of the callers use
this feature, and testing proved that the performance gain of
stopping parsing early is negligible and unmeasurable.

Signed-off-by: Han Young <hanyang.tony@bytedance.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/blame.c

index 91586e6852b09e88d80172178890af2a02b543b7..dc934abef40215bb88b25a188da95e3945540cbc 100644 (file)
@@ -197,9 +197,7 @@ static void commit_info_destroy(struct commit_info *ci)
        strbuf_release(&ci->summary);
 }
 
-static void get_commit_info(struct commit *commit,
-                           struct commit_info *ret,
-                           int detailed)
+static void get_commit_info(struct commit *commit, struct commit_info *ret)
 {
        int len;
        const char *subject, *encoding;
@@ -211,11 +209,6 @@ static void get_commit_info(struct commit *commit,
                    &ret->author, &ret->author_mail,
                    &ret->author_time, &ret->author_tz);
 
-       if (!detailed) {
-               repo_unuse_commit_buffer(the_repository, commit, message);
-               return;
-       }
-
        get_ac_line(message, "\ncommitter ",
                    &ret->committer, &ret->committer_mail,
                    &ret->committer_time, &ret->committer_tz);
@@ -263,7 +256,7 @@ static int emit_one_suspect_detail(struct blame_origin *suspect, int repeat)
                return 0;
 
        suspect->commit->object.flags |= METAINFO_SHOWN;
-       get_commit_info(suspect->commit, &ci, 1);
+       get_commit_info(suspect->commit, &ci);
        printf("author %s\n", ci.author.buf);
        printf("author-mail %s\n", ci.author_mail.buf);
        printf("author-time %"PRItime"\n", ci.author_time);
@@ -471,7 +464,7 @@ static void emit_other(struct blame_scoreboard *sb, struct blame_entry *ent, int
        int show_raw_time = !!(opt & OUTPUT_RAW_TIMESTAMP);
        const char *default_color = NULL, *color = NULL, *reset = NULL;
 
-       get_commit_info(suspect->commit, &ci, 1);
+       get_commit_info(suspect->commit, &ci);
        oid_to_hex_r(hex, &suspect->commit->object.oid);
 
        cp = blame_nth_line(sb, ent->lno);
@@ -665,7 +658,7 @@ static void find_alignment(struct blame_scoreboard *sb, int *option)
                if (!(suspect->commit->object.flags & METAINFO_SHOWN)) {
                        struct commit_info ci = COMMIT_INFO_INIT;
                        suspect->commit->object.flags |= METAINFO_SHOWN;
-                       get_commit_info(suspect->commit, &ci, 1);
+                       get_commit_info(suspect->commit, &ci);
                        if (*option & OUTPUT_SHOW_EMAIL)
                                num = utf8_strwidth(ci.author_mail.buf);
                        else