summary refs log tree commit diff
path: root/ui-tree.c
diff options
context:
space:
mode:
authorLars Hjemli <hjemli@gmail.com>2012-03-18 20:59:36 +0000
committerLars Hjemli <hjemli@gmail.com>2012-03-18 20:59:36 +0000
commit2b9fab8d30420d935745c4d84ea22412ab2485e5 (patch)
tree664ebc3d061fd7e89393af67bfbc406f3b600be0 /ui-tree.c
parent08352c7a02f057f6cbaf817ca7e53c53be590a62 (diff)
parent3fbaf097153b239b092d11a178ace96671f9f3ec (diff)
Merge branch 'lh/module-links'
Diffstat (limited to 'ui-tree.c')
-rw-r--r--ui-tree.c13
1 files changed, 4 insertions, 9 deletions
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("</td><td>");
 	if (S_ISGITLINK(mode)) {
-		htmlf("<a class='ls-mod' href='");
-		html_attr(fmt(ctx.repo->module_link,
-			      name,
-			      sha1_to_hex(sha1)));
-		html("'>");
-		html_txt(name);
-		html("</a>");
+		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("</td></tr>\n");
 	free(name);
 	return 0;