]> git.ipfire.org Git - thirdparty/git.git/commitdiff
blame: simplify 'setup_scoreboard' interface
authorPhilippe Blain <levraiphilippeblain@gmail.com>
Sun, 1 Nov 2020 17:28:46 +0000 (17:28 +0000)
committerJunio C Hamano <gitster@pobox.com>
Sun, 1 Nov 2020 23:54:15 +0000 (15:54 -0800)
The previous commit moved the initialization of 'sb.path' in
'builtin/blame.c::cmd_blame' before the call to
'blame.c::setup_scoreboard'. Since 'cmd_blame' is the only caller of
'setup_scoreboard', it is now unnecessary for 'setup_scoreboard' to
receive 'path' as a separate argument, as 'sb.path' is already
initialized.

Remove this argument from setup_scoreboard's interface and use the
'path' field of the 'sb' 'struct blame_scoreboard' instead.

Signed-off-by: Philippe Blain <levraiphilippeblain@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
blame.c
blame.h
builtin/blame.c

diff --git a/blame.c b/blame.c
index de7b5d411fe3386661bea93388589977c67b3929..2d92af53fc0c185ea48212a491009bc3c61fc30f 100644 (file)
--- a/blame.c
+++ b/blame.c
@@ -2764,7 +2764,6 @@ void init_scoreboard(struct blame_scoreboard *sb)
 }
 
 void setup_scoreboard(struct blame_scoreboard *sb,
-                     const char *path,
                      struct blame_origin **orig)
 {
        const char *final_commit_name = NULL;
@@ -2803,7 +2802,7 @@ void setup_scoreboard(struct blame_scoreboard *sb,
                setup_work_tree();
                sb->final = fake_working_tree_commit(sb->repo,
                                                     &sb->revs->diffopt,
-                                                    path, sb->contents_from);
+                                                    sb->path, sb->contents_from);
                add_pending_object(sb->revs, &(sb->final->object), ":");
        }
 
@@ -2846,12 +2845,12 @@ void setup_scoreboard(struct blame_scoreboard *sb,
                sb->final_buf_size = o->file.size;
        }
        else {
-               o = get_origin(sb->final, path);
+               o = get_origin(sb->final, sb->path);
                if (fill_blob_sha1_and_mode(sb->repo, o))
-                       die(_("no such path %s in %s"), path, final_commit_name);
+                       die(_("no such path %s in %s"), sb->path, final_commit_name);
 
                if (sb->revs->diffopt.flags.allow_textconv &&
-                   textconv_object(sb->repo, path, o->mode, &o->blob_oid, 1, (char **) &sb->final_buf,
+                   textconv_object(sb->repo, sb->path, o->mode, &o->blob_oid, 1, (char **) &sb->final_buf,
                                    &sb->final_buf_size))
                        ;
                else
@@ -2861,7 +2860,7 @@ void setup_scoreboard(struct blame_scoreboard *sb,
                if (!sb->final_buf)
                        die(_("cannot read blob %s for path %s"),
                            oid_to_hex(&o->blob_oid),
-                           path);
+                           sb->path);
        }
        sb->num_read_blob++;
        prepare_lines(sb);
diff --git a/blame.h b/blame.h
index b6bbee4147288271094b3a6dad5a04d1fe597c16..e8c185c8ef68457b638ff2041151e6542841464b 100644 (file)
--- a/blame.h
+++ b/blame.h
@@ -181,7 +181,6 @@ const char *blame_nth_line(struct blame_scoreboard *sb, long lno);
 
 void init_scoreboard(struct blame_scoreboard *sb);
 void setup_scoreboard(struct blame_scoreboard *sb,
-                     const char *path,
                      struct blame_origin **orig);
 void setup_blame_bloom_data(struct blame_scoreboard *sb,
                            const char *path);
index e74bcf7991367eb427995f182dff2a476fa3175a..2a9f77b9190f81cbd5df48eff21e47278fcc6c30 100644 (file)
@@ -1087,7 +1087,7 @@ parse_done:
        build_ignorelist(&sb, &ignore_revs_file_list, &ignore_rev_list);
        string_list_clear(&ignore_revs_file_list, 0);
        string_list_clear(&ignore_rev_list, 0);
-       setup_scoreboard(&sb, path, &o);
+       setup_scoreboard(&sb, &o);
 
        /*
         * Changed-path Bloom filters are disabled when looking