From 6857bec50a52340fa6b85d626f49d45dd331ed0e Mon Sep 17 00:00:00 2001 From: Lars Hjemli Date: Wed, 15 Jun 2011 10:04:13 +0200 Subject: ui-tree.c: add support for path-selected submodule links The current 'repo.module-link' option is sufficient when all gitlinks in a repository can be converted to commit links in a uniform way, but not when different submodules/paths needs different settings. This patch adds support for 'repo.module-link.', which will be used for linking to submodules at paths matching one such entry. Signed-off-by: Lars Hjemli --- ui-tree.c | 13 ++++--------- 1 file changed, 4 insertions(+), 9 deletions(-) (limited to 'ui-tree.c') diff --git a/ui-tree.c b/ui-tree.c index 442b6be..b1adcc7 100644 --- a/ui-tree.c +++ b/ui-tree.c @@ -150,13 +150,7 @@ static int ls_item(const unsigned char *sha1, const char *base, int baselen, cgit_print_filemode(mode); html(""); if (S_ISGITLINK(mode)) { - htmlf(""); - html_txt(name); - html(""); + cgit_submodule_link("ls-mod", fullpath, sha1_to_hex(sha1)); } else if (S_ISDIR(mode)) { cgit_tree_link(name, NULL, "ls-dir", ctx.qry.head, curr_rev, fullpath); @@ -177,8 +171,9 @@ static int ls_item(const unsigned char *sha1, const char *base, int baselen, if (ctx.repo->max_stats) cgit_stats_link("stats", NULL, "button", ctx.qry.head, fullpath); - cgit_plain_link("plain", NULL, "button", ctx.qry.head, curr_rev, - fullpath); + if (!S_ISGITLINK(mode)) + cgit_plain_link("plain", NULL, "button", ctx.qry.head, curr_rev, + fullpath); html("\n"); free(name); return 0; -- cgit v1.2.3-24-g4f1b