summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLibravatar Philippe Blain <levraiphilippeblain@gmail.com>2020-11-01 17:28:46 +0000
committerLibravatar Junio C Hamano <gitster@pobox.com>2020-11-01 15:54:15 -0800
commit88894aaeeae92e8cb41143cc2e045f50289dc790 (patch)
treef6e12affe80d6a6746825b07e4ede6ce2d41b6da
parentblame: enable funcname blaming with userdiff driver (diff)
downloadtgif-88894aaeeae92e8cb41143cc2e045f50289dc790.tar.xz
blame: simplify 'setup_scoreboard' interface
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>
-rw-r--r--blame.c11
-rw-r--r--blame.h1
-rw-r--r--builtin/blame.c2
3 files changed, 6 insertions, 8 deletions
diff --git a/blame.c b/blame.c
index de7b5d411f..2d92af53fc 100644
--- 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 b6bbee4147..e8c185c8ef 100644
--- 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);
diff --git a/builtin/blame.c b/builtin/blame.c
index e74bcf7991..2a9f77b919 100644
--- a/builtin/blame.c
+++ b/builtin/blame.c
@@ -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