summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ui-shared.c6
-rw-r--r--ui-shared.h2
-rw-r--r--ui-tree.c8
3 files changed, 12 insertions, 4 deletions
diff --git a/ui-shared.c b/ui-shared.c
index 4408969..a2e0dd2 100644
--- a/ui-shared.c
+++ b/ui-shared.c
@@ -243,6 +243,12 @@ void cgit_tree_link(char *name, char *title, char *class, char *head,
 	reporevlink("tree", name, title, class, head, rev, path);
 }
 
+void cgit_plain_link(char *name, char *title, char *class, char *head,
+		     char *rev, char *path)
+{
+	reporevlink("plain", name, title, class, head, rev, path);
+}
+
 void cgit_log_link(char *name, char *title, char *class, char *head,
 		   char *rev, char *path, int ofs, char *grep, char *pattern)
 {
diff --git a/ui-shared.h b/ui-shared.h
index 07da4b4..c5ce056 100644
--- a/ui-shared.h
+++ b/ui-shared.h
@@ -11,6 +11,8 @@ extern void cgit_index_link(char *name, char *title, char *class,
 			    char *pattern, int ofs);
 extern void cgit_tree_link(char *name, char *title, char *class, char *head,
 			   char *rev, char *path);
+extern void cgit_plain_link(char *name, char *title, char *class, char *head,
+			    char *rev, char *path);
 extern void cgit_log_link(char *name, char *title, char *class, char *head,
 			  char *rev, char *path, int ofs, char *grep,
 			  char *pattern);
diff --git a/ui-tree.c b/ui-tree.c
index 9a837e2..79332fc 100644
--- a/ui-tree.c
+++ b/ui-tree.c
@@ -35,10 +35,10 @@ static void print_object(const unsigned char *sha1, char *path)
 		return;
 	}
 
-	html(" blob: <a href='");
-	html_attr(cgit_pageurl(ctx.qry.repo, "blob",
-			       fmt("id=%s&path=%s", sha1_to_hex(sha1), path)));
-	htmlf("'>%s</a>",sha1_to_hex(sha1));
+	html(" (");
+	cgit_plain_link("plain", NULL, NULL, ctx.qry.head,
+		        curr_rev, path);
+	htmlf(")<br/>blob: %s", sha1_to_hex(sha1));
 
 	html("<table summary='blob content' class='blob'>\n");
 	idx = 0;