| -rw-r--r-- | ui-snapshot.c | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/ui-snapshot.c b/ui-snapshot.c index f68e877..9bcf13d 100644 --- a/ui-snapshot.c +++ b/ui-snapshot.c @@ -180,6 +180,21 @@ out: return result ? strbuf_detach(&snapshot, NULL) : NULL; } +__attribute__((format (printf, 1, 2))) +static void show_error(char *fmt, ...) +{ + va_list ap; + + ctx.page.mimetype = "text/html"; + cgit_print_http_headers(); + cgit_print_docstart(); + cgit_print_pageheader(); + va_start(ap, fmt); + cgit_vprint_error(fmt, ap); + va_end(ap); + cgit_print_docend(); +} + void cgit_print_snapshot(const char *head, const char *hex, const char *filename, int dwim) { @@ -187,15 +202,13 @@ void cgit_print_snapshot(const char *head, const char *hex, char *prefix = NULL; if (!filename) { - cgit_print_error_page(400, "Bad request", - "No snapshot name specified"); + show_error("No snapshot name specified"); return; } f = get_format(filename); if (!f) { - cgit_print_error_page(400, "Bad request", - "Unsupported snapshot format: %s", filename); + show_error("Unsupported snapshot format: %s", filename); return; } |