diff options
Diffstat (limited to 'ui-summary.c')
-rw-r--r-- | ui-summary.c | 16 |
1 files changed, 10 insertions, 6 deletions
diff --git a/ui-summary.c b/ui-summary.c index b99ea98..e7158cc 100644 --- a/ui-summary.c +++ b/ui-summary.c | |||
@@ -33,7 +33,7 @@ static int cgit_print_branch_cb(const char *refname, const unsigned char *sha1, | |||
33 | html_txt(info->author); | 33 | html_txt(info->author); |
34 | html("</td><td>"); | 34 | html("</td><td>"); |
35 | url = cgit_pageurl(cgit_query_repo, "commit", | 35 | url = cgit_pageurl(cgit_query_repo, "commit", |
36 | fmt("id=%s", sha1_to_hex(sha1))); | 36 | fmt("h=%s", sha1_to_hex(sha1))); |
37 | html_link_open(url, NULL, NULL); | 37 | html_link_open(url, NULL, NULL); |
38 | html_ntxt(cgit_max_msg_len, info->subject); | 38 | html_ntxt(cgit_max_msg_len, info->subject); |
39 | html_link_close(); | 39 | html_link_close(); |
@@ -52,17 +52,21 @@ static int cgit_print_branch_cb(const char *refname, const unsigned char *sha1, | |||
52 | 52 | ||
53 | static void cgit_print_object_ref(struct object *obj) | 53 | static void cgit_print_object_ref(struct object *obj) |
54 | { | 54 | { |
55 | char *page, *url; | 55 | char *page, *arg, *url; |
56 | 56 | ||
57 | if (obj->type == OBJ_COMMIT) | 57 | if (obj->type == OBJ_COMMIT) { |
58 | page = "commit"; | 58 | page = "commit"; |
59 | else if (obj->type == OBJ_TREE) | 59 | arg = "h"; |
60 | } else if (obj->type == OBJ_TREE) { | ||
60 | page = "tree"; | 61 | page = "tree"; |
61 | else | 62 | arg = "id"; |
63 | } else { | ||
62 | page = "view"; | 64 | page = "view"; |
65 | arg = "id"; | ||
66 | } | ||
63 | 67 | ||
64 | url = cgit_pageurl(cgit_query_repo, page, | 68 | url = cgit_pageurl(cgit_query_repo, page, |
65 | fmt("id=%s", sha1_to_hex(obj->sha1))); | 69 | fmt("%s=%s", arg, sha1_to_hex(obj->sha1))); |
66 | html_link_open(url, NULL, NULL); | 70 | html_link_open(url, NULL, NULL); |
67 | htmlf("%s %s", typename(obj->type), | 71 | htmlf("%s %s", typename(obj->type), |
68 | sha1_to_hex(obj->sha1)); | 72 | sha1_to_hex(obj->sha1)); |