X-Git-Url: https://gitweb.ps.run/ps-cgit/blobdiff_plain/c326f3eb026d67650f79a6dda9a1a42c55d10a25..c330a2e5f86e1f77d3b724877935e11014cefa21:/ui-plain.c diff --git a/ui-plain.c b/ui-plain.c index ff85113..8d541e3 100644 --- a/ui-plain.c +++ b/ui-plain.c @@ -143,7 +143,7 @@ static int walk_tree(const unsigned char *sha1, struct strbuf *base, walk_tree_ctx->match = 2; return READ_TREE_RECURSIVE; } - } else if (base->len > walk_tree_ctx->match_baselen) { + } else if (base->len < INT_MAX && (int)base->len > walk_tree_ctx->match_baselen) { print_dir_entry(sha1, base->buf, base->len, pathname, mode); walk_tree_ctx->match = 2; } else if (S_ISDIR(mode)) { @@ -164,7 +164,7 @@ static int basedir_len(const char *path) void cgit_print_plain(void) { const char *rev = ctx.qry.sha1; - unsigned char sha1[20]; + struct object_id oid; struct commit *commit; struct pathspec_item path_items = { .match = ctx.qry.path, @@ -181,11 +181,11 @@ void cgit_print_plain(void) if (!rev) rev = ctx.qry.head; - if (get_sha1(rev, sha1)) { + if (get_oid(rev, &oid)) { cgit_print_error_page(404, "Not found", "Not found"); return; } - commit = lookup_commit_reference(sha1); + commit = lookup_commit_reference(oid.hash); if (!commit || parse_commit(commit)) { cgit_print_error_page(404, "Not found", "Not found"); return;