X-Git-Url: https://gitweb.ps.run/ps-cgit/blobdiff_plain/1dd53e3a2ffec730ec27ebe15b3d63e0b417a544..HEAD:/ui-diff.c diff --git a/ui-diff.c b/ui-diff.c index a10ce8a..a824546 100644 --- a/ui-diff.c +++ b/ui-diff.c @@ -6,6 +6,8 @@ * (see COPYING for full license text) */ +#define USE_THE_REPOSITORY_VARIABLE + #include "cgit.h" #include "ui-diff.h" #include "html.h" @@ -82,7 +84,7 @@ static void print_fileinfo(struct fileinfo *info) } html(""); - htmlf(""); + html(""); if (is_null_oid(info->new_oid)) { cgit_print_filemode(info->old_mode); } else { @@ -97,8 +99,8 @@ static void print_fileinfo(struct fileinfo *info) html("]"); } htmlf("", class); - cgit_diff_link(info->new_path, NULL, NULL, ctx.qry.head, ctx.qry.sha1, - ctx.qry.sha2, info->new_path); + cgit_diff_link(info->new_path, NULL, NULL, ctx.qry.head, ctx.qry.oid, + ctx.qry.oid2, info->new_path); if (info->status == DIFF_STATUS_COPIED || info->status == DIFF_STATUS_RENAMED) { htmlf(" (%s from ", info->status == DIFF_STATUS_COPIED ? "copied" : "renamed"); @@ -194,8 +196,8 @@ static void cgit_print_diffstat(const struct object_id *old_oid, int i; html("
"); - cgit_diff_link("Diffstat", NULL, NULL, ctx.qry.head, ctx.qry.sha1, - ctx.qry.sha2, NULL); + cgit_diff_link("Diffstat", NULL, NULL, ctx.qry.head, ctx.qry.oid, + ctx.qry.oid2, NULL); if (prefix) { html(" (limited to '"); html_txt(prefix); @@ -258,8 +260,8 @@ static void header(const struct object_id *oid1, char *path1, int mode1, htmlf("
deleted file mode %.6o", mode1); if (!subproject) { - abbrev1 = xstrdup(find_unique_abbrev(oid1->hash, DEFAULT_ABBREV)); - abbrev2 = xstrdup(find_unique_abbrev(oid2->hash, DEFAULT_ABBREV)); + abbrev1 = xstrdup(repo_find_unique_abbrev(the_repository, oid1, DEFAULT_ABBREV)); + abbrev2 = xstrdup(repo_find_unique_abbrev(the_repository, oid2, DEFAULT_ABBREV)); htmlf("
index %s..%s", abbrev1, abbrev2); free(abbrev1); free(abbrev2); @@ -402,21 +404,21 @@ void cgit_print_diff(const char *new_rev, const char *old_rev, if (!new_rev) new_rev = ctx.qry.head; - if (get_oid(new_rev, new_rev_oid)) { + if (repo_get_oid(the_repository, new_rev, new_rev_oid)) { cgit_print_error_page(404, "Not found", "Bad object name: %s", new_rev); return; } - commit = lookup_commit_reference(new_rev_oid); - if (!commit || parse_commit(commit)) { + commit = lookup_commit_reference(the_repository, new_rev_oid); + if (!commit || repo_parse_commit(the_repository, commit)) { cgit_print_error_page(404, "Not found", "Bad commit: %s", oid_to_hex(new_rev_oid)); return; } - new_tree_oid = &commit->tree->object.oid; + new_tree_oid = get_commit_tree_oid(commit); if (old_rev) { - if (get_oid(old_rev, old_rev_oid)) { + if (repo_get_oid(the_repository, old_rev, old_rev_oid)) { cgit_print_error_page(404, "Not found", "Bad object name: %s", old_rev); return; @@ -424,17 +426,17 @@ void cgit_print_diff(const char *new_rev, const char *old_rev, } else if (commit->parents && commit->parents->item) { oidcpy(old_rev_oid, &commit->parents->item->object.oid); } else { - oidclr(old_rev_oid); + oidclr(old_rev_oid, the_repository->hash_algo); } if (!is_null_oid(old_rev_oid)) { - commit2 = lookup_commit_reference(old_rev_oid); - if (!commit2 || parse_commit(commit2)) { + commit2 = lookup_commit_reference(the_repository, old_rev_oid); + if (!commit2 || repo_parse_commit(the_repository, commit2)) { cgit_print_error_page(404, "Not found", "Bad commit: %s", oid_to_hex(old_rev_oid)); return; } - old_tree_oid = &commit2->tree->object.oid; + old_tree_oid = get_commit_tree_oid(commit2); } else { old_tree_oid = NULL; } @@ -442,7 +444,7 @@ void cgit_print_diff(const char *new_rev, const char *old_rev, if (raw) { struct diff_options diffopt; - diff_setup(&diffopt); + repo_diff_setup(the_repository, &diffopt); diffopt.output_format = DIFF_FORMAT_PATCH; diffopt.flags.recursive = 1; diff_setup_done(&diffopt);