[PATCH v2 17/22] ui-summary.c: use struct strbuf instead of fixed-size buffers
John Keeping
john at keeping.me.uk
Sun Apr 7 16:26:46 CEST 2013
Signed-off-by: John Keeping <john at keeping.me.uk>
---
Changes since v1:
- Use fmtalloc where appropriate
ui-summary.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/ui-summary.c b/ui-summary.c
index bd123ef..f965b32 100644
--- a/ui-summary.c
+++ b/ui-summary.c
@@ -17,6 +17,7 @@
static void print_url(char *base, char *suffix)
{
int columns = 3;
+ struct strbuf basebuf = STRBUF_INIT;
if (ctx.repo->enable_log_filecount)
columns++;
@@ -25,13 +26,16 @@ static void print_url(char *base, char *suffix)
if (!base || !*base)
return;
- if (suffix && *suffix)
- base = fmt("%s/%s", base, suffix);
+ if (suffix && *suffix) {
+ strbuf_addf(&basebuf, "%s/%s", base, suffix);
+ base = basebuf.buf;
+ }
htmlf("<tr><td colspan='%d'><a href='", columns);
html_url_path(base);
html("'>");
html_txt(base);
html("</a></td></tr>\n");
+ strbuf_release(&basebuf);
}
static void print_urls(char *txt, char *suffix)
@@ -112,8 +116,8 @@ void cgit_print_repo_readme(char *path)
/* Prepend repo path to relative readme path unless tracked. */
if (!ref && *ctx.repo->readme != '/')
- ctx.repo->readme = xstrdup(fmt("%s/%s", ctx.repo->path,
- ctx.repo->readme));
+ ctx.repo->readme = fmtalloc("%s/%s", ctx.repo->path,
+ ctx.repo->readme);
/* If a subpath is specified for the about page, make it relative
* to the directory containing the configured readme.
--
1.8.2.692.g17a9715
More information about the CGit
mailing list