all repos — cgit @ 780d2d98598e621d12c7b23d4c68b5ddc7019838

a hyperfast web frontend for git written in c

Merge branch 'stable'
Lars Hjemli hjemli@gmail.com
Sun, 15 Mar 2009 09:06:20 +0100
commit

780d2d98598e621d12c7b23d4c68b5ddc7019838

parent

942a4c200168e110ec009c3260dc5f5f050de325

2 files changed, 25 insertions(+), 11 deletions(-)

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

@@ -156,20 +156,31 @@

return NULL; } +void show_error(char *msg) +{ + ctx.page.mimetype = "text/html"; + cgit_print_http_headers(&ctx); + cgit_print_docstart(&ctx); + cgit_print_pageheader(&ctx); + cgit_print_error(msg); + cgit_print_docend(); +} + void cgit_print_snapshot(const char *head, const char *hex, const char *filename, int snapshots, int dwim) { const struct cgit_snapshot_format* f; char *prefix = NULL; + if (!filename) { + show_error("No snapshot name specified"); + return; + } + f = get_format(filename); if (!f) { - ctx.page.mimetype = "text/html"; - cgit_print_http_headers(&ctx); - cgit_print_docstart(&ctx); - cgit_print_pageheader(&ctx); - cgit_print_error(fmt("Unsupported snapshot format: %s", filename)); - cgit_print_docend(); + show_error(xstrdup(fmt("Unsupported snapshot format: %s", + filename))); return; }
M ui-tree.cui-tree.c

@@ -25,11 +25,14 @@ html("<table summary='blob content' class='blob'>\n");

html("<tr><td class='linenumbers'><pre>"); idx = 0; lineno = 0; - htmlf(numberfmt, ++lineno); - while(idx < size - 1) { // skip absolute last newline - if (buf[idx] == '\n') - htmlf(numberfmt, ++lineno); - idx++; + + if (size) { + htmlf(numberfmt, ++lineno); + while(idx < size - 1) { // skip absolute last newline + if (buf[idx] == '\n') + htmlf(numberfmt, ++lineno); + idx++; + } } html("</pre></td>\n"); html("<td class='lines'><pre><code>");