all repos — cgit @ 8b5fc6de036cf159ffa61a55158044749bd6f4d9

a hyperfast web frontend for git written in c

ui-shared: generate proper links in cgit_object_link()

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Lars Hjemli hjemli@gmail.com
Sun, 05 Oct 2008 21:12:08 +0200
commit

8b5fc6de036cf159ffa61a55158044749bd6f4d9

parent

2e884f3162771880a2a5260713d6b7d1aa25bc6f

1 files changed, 7 insertions(+), 15 deletions(-)

jump to
M ui-shared.cui-shared.c

@@ -359,29 +359,21 @@ }

void cgit_object_link(struct object *obj) { - char *page, *arg, *url; + char *page, *rev, *name; if (obj->type == OBJ_COMMIT) { cgit_commit_link(fmt("commit %s", sha1_to_hex(obj->sha1)), NULL, NULL, ctx.qry.head, sha1_to_hex(obj->sha1)); return; - } else if (obj->type == OBJ_TREE) { + } else if (obj->type == OBJ_TREE) page = "tree"; - arg = "id"; - } else if (obj->type == OBJ_TAG) { + else if (obj->type == OBJ_TAG) page = "tag"; - arg = "id"; - } else { + else page = "blob"; - arg = "id"; - } - - url = cgit_pageurl(ctx.qry.repo, page, - fmt("%s=%s", arg, sha1_to_hex(obj->sha1))); - html_link_open(url, NULL, NULL); - htmlf("%s %s", typename(obj->type), - sha1_to_hex(obj->sha1)); - html_link_close(); + rev = sha1_to_hex(obj->sha1); + name = fmt("%s %s", typename(obj->type), rev); + reporevlink(page, name, NULL, NULL, ctx.qry.head, rev, NULL); } void cgit_print_date(time_t secs, char *format, int local_time)