aboutsummaryrefslogtreecommitdiffstats
path: root/ui-commit.c
diff options
context:
space:
mode:
authorJohan Herland <johan@herland.net>2010-06-10 01:09:34 +0200
committerLars Hjemli <hjemli@gmail.com>2010-06-19 10:40:23 +0200
commit34c2331d2c33ea28743a2ee3e62f7337ae9887f6 (patch)
tree676cf86b83e25fefee2784e5f1b93e807ebf9900 /ui-commit.c
parenteac1b675414722ae90df75abc727b2795bc096f0 (diff)
downloadcgit-34c2331d2c33ea28743a2ee3e62f7337ae9887f6.tar.gz
cgit-34c2331d2c33ea28743a2ee3e62f7337ae9887f6.tar.bz2
cgit-34c2331d2c33ea28743a2ee3e62f7337ae9887f6.zip
ui-commit: Preserve path limit in links to tree and diff pages
For tree links, the original link is unchanged, but in the case of a path limit, a subtree link is added to the right of the original tree link. Signed-off-by: Johan Herland <johan@herland.net> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (limited to 'ui-commit.c')
-rw-r--r--ui-commit.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/ui-commit.c b/ui-commit.c
index b3a2063..1793921 100644
--- a/ui-commit.c
+++ b/ui-commit.c
@@ -71,6 +71,10 @@ void cgit_print_commit(char *hex, const char *prefix)
tmp = xstrdup(hex);
cgit_tree_link(sha1_to_hex(commit->tree->object.sha1), NULL, NULL,
ctx.qry.head, tmp, NULL);
+ if (prefix) {
+ html(" /");
+ cgit_tree_link(prefix, NULL, NULL, ctx.qry.head, tmp, prefix);
+ }
html("</td></tr>\n");
for (p = commit->parents; p ; p = p->next) {
parent = lookup_commit_reference(p->item->object.sha1);
@@ -86,7 +90,7 @@ void cgit_print_commit(char *hex, const char *prefix)
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, 0);
+ sha1_to_hex(p->item->object.sha1), prefix, 0);
html(")</td></tr>");
parents++;
}