all repos — cgit @ f6ffe40d1a2c985494e48dc2d36663ffde1e6044

a hyperfast web frontend for git written in c

ui-shared: make a char* parameter const

All cgit_xxx_link functions take const char* for the 'name' parameter,
except for cgit_commit_link, which takes a char* and subsequently
modifies the contents.  Avoiding the content changes, and making it
const char* will avoid the need to make copies of const char* strings
being passed to cgit_commit_link.

Signed-off-by: Jeff Smith <whydoubt@gmail.com>
Reviewed-by: John Keeping <john@keeping.me.uk>
Jeff Smith whydoubt@gmail.com
Sun, 01 Oct 2017 23:39:07 -0500
commit

f6ffe40d1a2c985494e48dc2d36663ffde1e6044

parent

9337c7ee83221d48d02c3c7b5c9dcbaca23ad92f

2 files changed, 9 insertions(+), 12 deletions(-)

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

@@ -347,17 +347,10 @@ html_txt(name);

html("</a>"); } -void cgit_commit_link(char *name, const char *title, const char *class, +void cgit_commit_link(const char *name, const char *title, const char *class, const char *head, const char *rev, const char *path) { char *delim; - - if (strlen(name) > ctx.cfg.max_msg_len && ctx.cfg.max_msg_len >= 15) { - name[ctx.cfg.max_msg_len] = '\0'; - name[ctx.cfg.max_msg_len - 1] = '.'; - name[ctx.cfg.max_msg_len - 2] = '.'; - name[ctx.cfg.max_msg_len - 3] = '.'; - } delim = repolink(title, class, "commit", head, path); if (rev && ctx.qry.head && strcmp(rev, ctx.qry.head)) {

@@ -387,9 +380,13 @@ html(delim);

html("follow=1"); } html("'>"); - if (name[0] != '\0') - html_txt(name); - else + if (name[0] != '\0') { + if (strlen(name) > ctx.cfg.max_msg_len && ctx.cfg.max_msg_len >= 15) { + html_ntxt(name, ctx.cfg.max_msg_len - 3); + html("..."); + } else + html_txt(name); + } else html_txt("(no commit message)"); html("</a>"); }
M ui-shared.hui-shared.h

@@ -30,7 +30,7 @@ extern void cgit_log_link(const char *name, const char *title,

const char *class, const char *head, const char *rev, const char *path, int ofs, const char *grep, const char *pattern, int showmsg, int follow); -extern void cgit_commit_link(char *name, const char *title, +extern void cgit_commit_link(const char *name, const char *title, const char *class, const char *head, const char *rev, const char *path); extern void cgit_patch_link(const char *name, const char *title,