Unidiff1 files changed, 10 insertions, 1 deletions
|
diff --git a/cgit.c b/cgit.c index bbde64b..d37abc9 100644 --- a/ cgit.c+++ b/ cgit.c |
|
@@ -298,25 +298,34 @@ static void process_request(struct cgit_context *ctx) |
298 | cmd = cgit_get_cmd(ctx); |
298 | cmd = cgit_get_cmd(ctx); |
299 | if (!cmd) { |
299 | if (!cmd) { |
300 | ctx->page.title = "cgit error"; |
300 | ctx->page.title = "cgit error"; |
301 | ctx->repo = NULL; |
301 | ctx->repo = NULL; |
302 | cgit_print_http_headers(ctx); |
302 | cgit_print_http_headers(ctx); |
303 | cgit_print_docstart(ctx); |
303 | cgit_print_docstart(ctx); |
304 | cgit_print_pageheader(ctx); |
304 | cgit_print_pageheader(ctx); |
305 | cgit_print_error("Invalid request"); |
305 | cgit_print_error("Invalid request"); |
306 | cgit_print_docend(); |
306 | cgit_print_docend(); |
307 | return; |
307 | return; |
308 | } |
308 | } |
309 | |
309 | |
310 | if (cmd->want_repo && prepare_repo_cmd(ctx)) |
310 | if (cmd->want_repo && !ctx->repo) { |
| |
311 | cgit_print_http_headers(ctx); |
| |
312 | cgit_print_docstart(ctx); |
| |
313 | cgit_print_pageheader(ctx); |
| |
314 | cgit_print_error(fmt("No repository selected")); |
| |
315 | cgit_print_docend(); |
| |
316 | return; |
| |
317 | } |
| |
318 | |
| |
319 | if (ctx->repo && prepare_repo_cmd(ctx)) |
311 | return; |
320 | return; |
312 | |
321 | |
313 | if (cmd->want_layout) { |
322 | if (cmd->want_layout) { |
314 | cgit_print_http_headers(ctx); |
323 | cgit_print_http_headers(ctx); |
315 | cgit_print_docstart(ctx); |
324 | cgit_print_docstart(ctx); |
316 | cgit_print_pageheader(ctx); |
325 | cgit_print_pageheader(ctx); |
317 | } |
326 | } |
318 | |
327 | |
319 | cmd->fn(ctx); |
328 | cmd->fn(ctx); |
320 | |
329 | |
321 | if (cmd->want_layout) |
330 | if (cmd->want_layout) |
322 | cgit_print_docend(); |
331 | cgit_print_docend(); |
|