X-Git-Url: https://gitweb.ps.run/ps-cgit/blobdiff_plain/db6303b58883c4417f5bcc0c1ee34fed6553dca3..eac1b675414722ae90df75abc727b2795bc096f0:/ui-commit.c diff --git a/ui-commit.c b/ui-commit.c index d6b73ee..b3a2063 100644 --- a/ui-commit.c +++ b/ui-commit.c @@ -12,7 +12,7 @@ #include "ui-diff.h" #include "ui-log.h" -void cgit_print_commit(char *hex) +void cgit_print_commit(char *hex, const char *prefix) { struct commit *commit, *parent; struct commitinfo *info; @@ -35,7 +35,7 @@ void cgit_print_commit(char *hex) } info = cgit_parse_commit(commit); - load_ref_decorations(); + load_ref_decorations(DECORATE_FULL_REFS); html("
| author | "); @@ -58,9 +58,14 @@ void cgit_print_commit(char *hex) html(" | |
|---|---|---|
| commit | "); tmp = sha1_to_hex(commit->object.sha1); - cgit_commit_link(tmp, NULL, NULL, ctx.qry.head, tmp); + cgit_commit_link(tmp, NULL, NULL, ctx.qry.head, tmp, 0); html(" ("); - cgit_patch_link("patch", NULL, NULL, NULL, tmp); + cgit_patch_link("patch", NULL, NULL, NULL, tmp, prefix); + html(") ("); + if ((ctx.qry.ssdiff && !ctx.cfg.ssdiff) || (!ctx.qry.ssdiff && ctx.cfg.ssdiff)) + cgit_commit_link("unidiff", NULL, NULL, ctx.qry.head, tmp, 1); + else + cgit_commit_link("side-by-side diff", NULL, NULL, ctx.qry.head, tmp, 1); html(") | |
| tree | "); tmp = xstrdup(hex); @@ -78,10 +83,10 @@ void cgit_print_commit(char *hex) html(" | |
| parent | " ""); cgit_commit_link(sha1_to_hex(p->item->object.sha1), NULL, NULL, - ctx.qry.head, sha1_to_hex(p->item->object.sha1)); + ctx.qry.head, sha1_to_hex(p->item->object.sha1), 0); html(" ("); cgit_diff_link("diff", NULL, NULL, ctx.qry.head, hex, - sha1_to_hex(p->item->object.sha1), NULL); + sha1_to_hex(p->item->object.sha1), NULL, 0); html(") | |