diff options
-rw-r--r-- | cgit.c | 2 | ||||
-rw-r--r-- | cgit.h | 2 | ||||
-rw-r--r-- | ui-shared.c | 2 |
3 files changed, 6 insertions, 0 deletions
@@ -285,6 +285,8 @@ static int prepare_repo_cmd(struct cgit_context *ctx) | |||
285 | if (get_sha1(ctx->qry.head, sha1)) { | 285 | if (get_sha1(ctx->qry.head, sha1)) { |
286 | tmp = xstrdup(ctx->qry.head); | 286 | tmp = xstrdup(ctx->qry.head); |
287 | ctx->qry.head = ctx->repo->defbranch; | 287 | ctx->qry.head = ctx->repo->defbranch; |
288 | ctx->page.status = 404; | ||
289 | ctx->page.statusmsg = "not found"; | ||
288 | cgit_print_http_headers(ctx); | 290 | cgit_print_http_headers(ctx); |
289 | cgit_print_docstart(ctx); | 291 | cgit_print_docstart(ctx); |
290 | cgit_print_pageheader(ctx); | 292 | cgit_print_pageheader(ctx); |
@@ -181,6 +181,8 @@ struct cgit_page { | |||
181 | char *charset; | 181 | char *charset; |
182 | char *filename; | 182 | char *filename; |
183 | char *title; | 183 | char *title; |
184 | int status; | ||
185 | char *statusmsg; | ||
184 | }; | 186 | }; |
185 | 187 | ||
186 | struct cgit_context { | 188 | struct cgit_context { |
diff --git a/ui-shared.c b/ui-shared.c index 5ce2bc5..29036d0 100644 --- a/ui-shared.c +++ b/ui-shared.c | |||
@@ -467,6 +467,8 @@ void cgit_print_age(time_t t, time_t max_relative, char *format) | |||
467 | 467 | ||
468 | void cgit_print_http_headers(struct cgit_context *ctx) | 468 | void cgit_print_http_headers(struct cgit_context *ctx) |
469 | { | 469 | { |
470 | if (ctx->page.status) | ||
471 | htmlf("Status: %d %s\n", ctx->page.status, ctx->page.statusmsg); | ||
470 | if (ctx->page.mimetype && ctx->page.charset) | 472 | if (ctx->page.mimetype && ctx->page.charset) |
471 | htmlf("Content-Type: %s; charset=%s\n", ctx->page.mimetype, | 473 | htmlf("Content-Type: %s; charset=%s\n", ctx->page.mimetype, |
472 | ctx->page.charset); | 474 | ctx->page.charset); |