}
ctx.page.mimetype = "application/octet-stream";
ctx.page.filename = path;
- if (!starts_with(ctx.repo->path, path))
- ctx.page.filename += strlen(ctx.repo->path) + 1;
+ skip_prefix(path, ctx.repo->path, &ctx.page.filename);
+ skip_prefix(ctx.page.filename, "/", &ctx.page.filename);
cgit_print_http_headers();
html_include(path);
}
void cgit_clone_info(void)
{
- if (!ctx.qry.path || strcmp(ctx.qry.path, "refs"))
+ if (!ctx.qry.path || strcmp(ctx.qry.path, "refs")) {
+ html_status(400, "Bad request", 0);
return;
+ }
ctx.page.mimetype = "text/plain";
ctx.page.filename = "info/refs";