-rw-r--r-- | cgit.h | 2 | ||||
-rw-r--r-- | ui-shared.c | 17 | ||||
-rw-r--r-- | ui-snapshot.c | 2 |
3 files changed, 16 insertions, 5 deletions
@@ -202,4 +202,6 @@ extern int cache_expired(struct cacheitem *item); extern char *cgit_repourl(const char *reponame); +extern char *cgit_fileurl(const char *reponame, const char *pagename, + const char *filename, const char *query); extern char *cgit_pageurl(const char *reponame, const char *pagename, const char *query); diff --git a/ui-shared.c b/ui-shared.c index d4376ce..1c1415e 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -58,11 +58,11 @@ char *cgit_repourl(const char *reponame) } -char *cgit_pageurl(const char *reponame, const char *pagename, - const char *query) +char *cgit_fileurl(const char *reponame, const char *pagename, + const char *filename, const char *query) { if (cgit_virtual_root) { if (query) - return fmt("%s/%s/%s/?%s", cgit_virtual_root, reponame, - pagename, query); + return fmt("%s/%s/%s/%s?%s", cgit_virtual_root, reponame, + pagename, filename?filename:"", query); else return fmt("%s/%s/%s/", cgit_virtual_root, reponame, @@ -76,4 +76,11 @@ char *cgit_pageurl(const char *reponame, const char *pagename, } +char *cgit_pageurl(const char *reponame, const char *pagename, + const char *query) +{ + return cgit_fileurl(reponame,pagename,0,query); +} + + char *cgit_currurl() { @@ -369,2 +376,4 @@ void cgit_print_snapshot_start(const char *mimetype, const char *filename, html("\n"); } + +/* vim:set sw=8: */ diff --git a/ui-snapshot.c b/ui-snapshot.c index 84bf8f7..7076b50 100644 --- a/ui-snapshot.c +++ b/ui-snapshot.c @@ -110,5 +110,5 @@ void cgit_print_snapshot_links(const char *repo,const char *hex) filename = fmt("%s-%s%s",repo,hex,sat->suffix); htmlf("<a href='%s'>%s</a><br/>", - cgit_pageurl(repo,"snapshot", + cgit_fileurl(repo,"snapshot",filename, fmt("id=%s&name=%s",hex,filename)), filename); } |