diff options
author | Lars Hjemli <hjemli@gmail.com> | 2007-06-29 20:27:41 +0200 |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2007-06-29 20:31:00 +0200 |
commit | 103940fe6b0914dc42b8b033d1d328f38135ca5f (patch) | |
tree | 2bc9c831dc5158032e68e065519e7ee243b6731d /ui-shared.c | |
parent | 382805ee83b6e6f165159312a9fe20e3971897b6 (diff) | |
download | cgit-103940fe6b0914dc42b8b033d1d328f38135ca5f.tar.gz cgit-103940fe6b0914dc42b8b033d1d328f38135ca5f.tar.xz |
Add ofs argument to cgit_log_link and use it in ui-log.c
This fixes a bug in the prev/next links on the log page: when on the default
branch the links to prev/next page would contain h=(null).
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (limited to 'ui-shared.c')
-rw-r--r-- | ui-shared.c | 22 |
1 files changed, 19 insertions, 3 deletions
diff --git a/ui-shared.c b/ui-shared.c index 64c237f..bfcc2ac 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -163,9 +163,25 @@ void cgit_tree_link(char *name, char *title, char *class, char *head, } void cgit_log_link(char *name, char *title, char *class, char *head, - char *rev, char *path) + char *rev, char *path, int ofs) { - reporevlink("log", name, title, class, head, rev, path); + char *delim; + + delim = repolink(title, class, "log", head, path); + if (rev && strcmp(rev, cgit_query_head)) { + html(delim); + html("id="); + html_attr(rev); + delim = "&"; + } + if (ofs > 0) { + html(delim); + html("ofs="); + htmlf("%d", ofs); + } + html("'>"); + html_txt(name); + html("</a>"); } void cgit_commit_link(char *name, char *title, char *class, char *head, @@ -302,7 +318,7 @@ void cgit_print_pageheader(char *title, int show_search) NULL, NULL); html(" "); cgit_log_link("log", NULL, NULL, cgit_query_head, - cgit_query_sha1, cgit_query_path); + cgit_query_sha1, cgit_query_path, 0); html(" "); cgit_tree_link("tree", NULL, NULL, cgit_query_head, cgit_query_sha1, NULL); |