X-Git-Url: https://gitweb.ps.run/ps-cgit/blobdiff_plain/f60ffa143cca61e9729ac71033e1a556cf422871..eeddb5bc0905d4728001a111a9b1eb60ecccf9bd:/ui-shared.c diff --git a/ui-shared.c b/ui-shared.c index 070971f..497dfd0 100644 --- a/ui-shared.c +++ b/ui-shared.c @@ -128,7 +128,7 @@ const char *cgit_repobasename(const char *reponame) /* strip trailing slashes */ while (p && rvbuf[p] == '/') rvbuf[p--] = 0; /* strip trailing .git */ - if (p >= 3 && !prefixcmp(&rvbuf[p-3], ".git")) { + if (p >= 3 && starts_with(&rvbuf[p-3], ".git")) { p -= 3; rvbuf[p--] = 0; } /* strip more trailing slashes if any */ @@ -328,8 +328,7 @@ void cgit_log_link(const char *name, const char *title, const char *class, } void cgit_commit_link(char *name, const char *title, const char *class, - const char *head, const char *rev, const char *path, - int toggle_ssdiff) + const char *head, const char *rev, const char *path) { if (strlen(name) > ctx.cfg.max_msg_len && ctx.cfg.max_msg_len >= 15) { name[ctx.cfg.max_msg_len] = '\0'; @@ -347,7 +346,7 @@ void cgit_commit_link(char *name, const char *title, const char *class, html_url_arg(rev); delim = "&"; } - if ((ctx.qry.ssdiff && !toggle_ssdiff) || (!ctx.qry.ssdiff && toggle_ssdiff)) { + if (ctx.qry.ssdiff) { html(delim); html("ss=1"); delim = "&"; @@ -463,7 +462,7 @@ static void cgit_self_link(char *name, const char *title, const char *class) else if (!strcmp(ctx.qry.page, "commit")) cgit_commit_link(name, title, class, ctx.qry.head, ctx.qry.has_sha1 ? ctx.qry.sha1 : NULL, - ctx.qry.path, 0); + ctx.qry.path); else if (!strcmp(ctx.qry.page, "patch")) cgit_patch_link(name, title, class, ctx.qry.head, ctx.qry.has_sha1 ? ctx.qry.sha1 : NULL, @@ -503,7 +502,7 @@ void cgit_object_link(struct object *obj) shortrev[10] = '\0'; if (obj->type == OBJ_COMMIT) { cgit_commit_link(fmt("commit %s...", shortrev), NULL, NULL, - ctx.qry.head, fullrev, NULL, 0); + ctx.qry.head, fullrev, NULL); return; } else if (obj->type == OBJ_TREE) page = "tree"; @@ -596,6 +595,8 @@ void cgit_print_age(time_t t, time_t max_relative, const char *format) return; time(&now); secs = now - t; + if (secs < 0) + secs = 0; if (secs > max_relative && max_relative >= 0) { cgit_print_date(t, format, ctx.cfg.local_time); @@ -859,6 +860,10 @@ void cgit_print_pageheader(void) html("
\n"); if (ctx.env.authenticated && ctx.repo) { + if (ctx.repo->readme.nr) + reporevlink("about", "about", NULL, + hc("about"), ctx.qry.head, NULL, + NULL); cgit_summary_link("summary", NULL, hc("summary"), ctx.qry.head); cgit_refs_link("refs", NULL, hc("refs"), ctx.qry.head, @@ -869,16 +874,12 @@ void cgit_print_pageheader(void) cgit_tree_link("tree", NULL, hc("tree"), ctx.qry.head, ctx.qry.sha1, ctx.qry.vpath); cgit_commit_link("commit", NULL, hc("commit"), - ctx.qry.head, ctx.qry.sha1, ctx.qry.vpath, 0); + ctx.qry.head, ctx.qry.sha1, ctx.qry.vpath); cgit_diff_link("diff", NULL, hc("diff"), ctx.qry.head, ctx.qry.sha1, ctx.qry.sha2, ctx.qry.vpath, 0); if (ctx.repo->max_stats) cgit_stats_link("stats", NULL, hc("stats"), ctx.qry.head, ctx.qry.vpath); - if (ctx.repo->readme.nr) - reporevlink("about", "about", NULL, - hc("about"), ctx.qry.head, NULL, - NULL); html(""); html("