X-Git-Url: https://gitweb.ps.run/ps-cgit/blobdiff_plain/f7f26f88755ac6a3b9af4918b51b0d6e7a692c78..360af46fac6fe79ec1868141a6c34b4c6b732ba0:/ui-commit.c diff --git a/ui-commit.c b/ui-commit.c index aa1892f..0c3d740 100644 --- a/ui-commit.c +++ b/ui-commit.c @@ -27,12 +27,14 @@ void cgit_print_commit(char *hex, const char *prefix) hex = ctx.qry.head; if (get_sha1(hex, sha1)) { - cgit_print_error("Bad object id: %s", hex); + cgit_print_error_page(400, "Bad request", + "Bad object id: %s", hex); return; } commit = lookup_commit_reference(sha1); if (!commit) { - cgit_print_error("Bad commit reference: %s", hex); + cgit_print_error_page(404, "Not found", + "Bad commit reference: %s", hex); return; } info = cgit_parse_commit(commit); @@ -41,35 +43,40 @@ void cgit_print_commit(char *hex, const char *prefix) load_ref_decorations(DECORATE_FULL_REFS); + cgit_print_layout_start(); cgit_print_diff_ctrls(); html("
| author | "); + cgit_open_filter(ctx.repo->email_filter, info->author_email, "commit"); html_txt(info->author); if (!ctx.cfg.noplainemail) { html(" "); html_txt(info->author_email); } + cgit_close_filter(ctx.repo->email_filter); html(" | "); cgit_print_date(info->author_date, FMT_LONGDATE, ctx.cfg.local_time); html(" |
|---|---|---|
| committer | "); + cgit_open_filter(ctx.repo->email_filter, info->committer_email, "commit"); html_txt(info->committer); if (!ctx.cfg.noplainemail) { html(" "); html_txt(info->committer_email); } + cgit_close_filter(ctx.repo->email_filter); html(" | "); cgit_print_date(info->committer_date, FMT_LONGDATE, ctx.cfg.local_time); html(" |
| commit | "); - tmp = sha1_to_hex(commit->object.sha1); - cgit_commit_link(tmp, NULL, NULL, ctx.qry.head, tmp, prefix, 0); + tmp = oid_to_hex(&commit->object.oid); + cgit_commit_link(tmp, NULL, NULL, ctx.qry.head, tmp, prefix); html(" ("); cgit_patch_link("patch", NULL, NULL, NULL, tmp, prefix); html(") | |
| tree | "); tmp = xstrdup(hex); - cgit_tree_link(sha1_to_hex(commit->tree->object.sha1), NULL, NULL, + cgit_tree_link(oid_to_hex(&commit->tree->object.oid), NULL, NULL, ctx.qry.head, tmp, NULL); if (prefix) { html(" /"); @@ -78,7 +85,7 @@ void cgit_print_commit(char *hex, const char *prefix) free(tmp); html(" | |
| "); cgit_print_error("Error reading parent commit"); @@ -87,15 +94,15 @@ void cgit_print_commit(char *hex, const char *prefix) } html(" | ||
| parent | " ""); - tmp = tmp2 = sha1_to_hex(p->item->object.sha1); + tmp = tmp2 = oid_to_hex(&p->item->object.oid); if (ctx.repo->enable_subject_links) { parent_info = cgit_parse_commit(parent); tmp2 = parent_info->subject; } - cgit_commit_link(tmp2, NULL, NULL, ctx.qry.head, tmp, prefix, 0); + cgit_commit_link(tmp2, NULL, NULL, ctx.qry.head, tmp, prefix); html(" ("); cgit_diff_link("diff", NULL, NULL, ctx.qry.head, hex, - sha1_to_hex(p->item->object.sha1), prefix, 0); + oid_to_hex(&p->item->object.oid), prefix); html(") | |