diff options
author | Vincent Ambo <mail@tazj.in> | 2020-11-21T18·59+0100 |
---|---|---|
committer | Vincent Ambo <mail@tazj.in> | 2020-11-21T19·09+0100 |
commit | 1e81ce6622ef790b297ff48f1d0286f51e225aee (patch) | |
tree | 152c022824a5cd4970bb41daa1fe94937b87a0e9 /third_party/cgit/ui-blame.c | |
parent | f4609b896fac842433bd495c166d5987852a6a73 (diff) |
merge(3p/cgit): subtree merge at adcc4f82 r/1891
Change-Id: I16941629a17a2f39b9324cb85dc0cec6b104dfe4
Diffstat (limited to 'third_party/cgit/ui-blame.c')
-rw-r--r-- | third_party/cgit/ui-blame.c | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/third_party/cgit/ui-blame.c b/third_party/cgit/ui-blame.c index 886c4c19fd1d..7f96351966f5 100644 --- a/third_party/cgit/ui-blame.c +++ b/third_party/cgit/ui-blame.c @@ -10,7 +10,7 @@ #include "ui-blame.h" #include "html.h" #include "ui-shared.h" -#include "argv-array.h" +#include "strvec.h" #include "blame.h" @@ -48,7 +48,7 @@ static void emit_blame_entry_hash(struct blame_entry *ent) unsigned long line = 0; char *detail = emit_suspect_detail(suspect); - html("<span class='sha1'>"); + html("<span class='oid'>"); cgit_commit_link(find_unique_abbrev(oid, DEFAULT_ABBREV), detail, NULL, ctx.qry.head, oid_to_hex(oid), suspect->path); html("</span>"); @@ -104,7 +104,7 @@ static void print_object(const struct object_id *oid, const char *path, enum object_type type; char *buf; unsigned long size; - struct argv_array rev_argv = ARGV_ARRAY_INIT; + struct strvec rev_argv = STRVEC_INIT; struct rev_info revs; struct blame_scoreboard sb; struct blame_origin *o; @@ -124,11 +124,11 @@ static void print_object(const struct object_id *oid, const char *path, return; } - argv_array_push(&rev_argv, "blame"); - argv_array_push(&rev_argv, rev); + strvec_push(&rev_argv, "blame"); + strvec_push(&rev_argv, rev); init_revisions(&revs, NULL); revs.diffopt.flags.allow_textconv = 1; - setup_revisions(rev_argv.argc, rev_argv.argv, &revs, NULL); + setup_revisions(rev_argv.nr, rev_argv.v, &revs, NULL); init_scoreboard(&sb); sb.revs = &revs; sb.repo = the_repository; @@ -260,7 +260,7 @@ static int basedir_len(const char *path) void cgit_print_blame(void) { - const char *rev = ctx.qry.sha1; + const char *rev = ctx.qry.oid; struct object_id oid; struct commit *commit; struct pathspec_item path_items = { @@ -294,8 +294,10 @@ void cgit_print_blame(void) walk_tree_ctx.match_baselen = (path_items.match) ? basedir_len(path_items.match) : -1; - read_tree_recursive(the_repository, commit->maybe_tree, "", 0, 0, - &paths, walk_tree, &walk_tree_ctx); + read_tree_recursive(the_repository, + repo_get_commit_tree(the_repository, commit), + "", 0, 0, + &paths, walk_tree, &walk_tree_ctx); if (!walk_tree_ctx.state) cgit_print_error_page(404, "Not found", "Not found"); else if (walk_tree_ctx.state == 2) |