summaryrefslogtreecommitdiffabout
path: root/cgit.c
Unidiff
Diffstat (limited to 'cgit.c') (more/less context) (ignore whitespace changes)
-rw-r--r--cgit.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/cgit.c b/cgit.c
index 64d95f9..19adadd 100644
--- a/cgit.c
+++ b/cgit.c
@@ -264,48 +264,50 @@ static int prepare_repo_cmd(struct cgit_context *ctx)
264 cgit_print_error(tmp); 264 cgit_print_error(tmp);
265 cgit_print_docend(); 265 cgit_print_docend();
266 return 1; 266 return 1;
267 } 267 }
268 ctx->page.title = fmt("%s - %s", ctx->repo->name, ctx->repo->desc); 268 ctx->page.title = fmt("%s - %s", ctx->repo->name, ctx->repo->desc);
269 269
270 if (!ctx->qry.head) { 270 if (!ctx->qry.head) {
271 ctx->qry.nohead = 1; 271 ctx->qry.nohead = 1;
272 ctx->qry.head = find_default_branch(ctx->repo); 272 ctx->qry.head = find_default_branch(ctx->repo);
273 ctx->repo->defbranch = ctx->qry.head; 273 ctx->repo->defbranch = ctx->qry.head;
274 } 274 }
275 275
276 if (!ctx->qry.head) { 276 if (!ctx->qry.head) {
277 cgit_print_http_headers(ctx); 277 cgit_print_http_headers(ctx);
278 cgit_print_docstart(ctx); 278 cgit_print_docstart(ctx);
279 cgit_print_pageheader(ctx); 279 cgit_print_pageheader(ctx);
280 cgit_print_error("Repository seems to be empty"); 280 cgit_print_error("Repository seems to be empty");
281 cgit_print_docend(); 281 cgit_print_docend();
282 return 1; 282 return 1;
283 } 283 }
284 284
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);
291 cgit_print_error(fmt("Invalid branch: %s", tmp)); 293 cgit_print_error(fmt("Invalid branch: %s", tmp));
292 cgit_print_docend(); 294 cgit_print_docend();
293 return 1; 295 return 1;
294 } 296 }
295 return 0; 297 return 0;
296} 298}
297 299
298static void process_request(void *cbdata) 300static void process_request(void *cbdata)
299{ 301{
300 struct cgit_context *ctx = cbdata; 302 struct cgit_context *ctx = cbdata;
301 struct cgit_cmd *cmd; 303 struct cgit_cmd *cmd;
302 304
303 cmd = cgit_get_cmd(ctx); 305 cmd = cgit_get_cmd(ctx);
304 if (!cmd) { 306 if (!cmd) {
305 ctx->page.title = "cgit error"; 307 ctx->page.title = "cgit error";
306 cgit_print_http_headers(ctx); 308 cgit_print_http_headers(ctx);
307 cgit_print_docstart(ctx); 309 cgit_print_docstart(ctx);
308 cgit_print_pageheader(ctx); 310 cgit_print_pageheader(ctx);
309 cgit_print_error("Invalid request"); 311 cgit_print_error("Invalid request");
310 cgit_print_docend(); 312 cgit_print_docend();
311 return; 313 return;