aboutsummaryrefslogtreecommitdiff
path: root/ui-tree.c
diff refs
from: back
to: back
| flip
diff options
context:
space:
mode:
Diffstat (limited to 'ui-tree.c')
-rw-r--r--ui-tree.c34
1 files changed, 7 insertions, 27 deletions
diff --git a/ui-tree.c b/ui-tree.c
index 5ac8c9a..034c4c8 100644
--- a/ui-tree.c
+++ b/ui-tree.c
@@ -6,8 +6,6 @@
* (see COPYING for full license text)
*/
- #define USE_THE_REPOSITORY_VARIABLE
-
#include "cgit.h"
#include "ui-tree.h"
#include "html.h"
@@ -93,14 +91,14 @@ static void print_object(const struct object_id *oid, const char *path, const ch
unsigned long size;
bool is_binary;
- type = odb_read_object_info(the_repository->objects, oid, &size);
+ type = oid_object_info(the_repository, oid, &size);
if (type == OBJ_BAD) {
cgit_print_error_page(404, "Not found",
"Bad object name: %s", oid_to_hex(oid));
return;
}
- buf = odb_read_object(the_repository->objects, oid, &type, &size);
+ buf = read_object_file(oid, &type, &size);
if (!buf) {
cgit_print_error_page(500, "Internal server error",
"Error reading object %s", oid_to_hex(oid));
@@ -206,23 +204,22 @@ static int ls_item(const struct object_id *oid, struct strbuf *base,
struct walk_tree_context *walk_tree_ctx = cbdata;
char *name;
struct strbuf fullpath = STRBUF_INIT;
- struct strbuf linkpath = STRBUF_INIT;
struct strbuf class = STRBUF_INIT;
enum object_type type;
unsigned long size = 0;
- char *buf;
name = xstrdup(pathname);
strbuf_addf(&fullpath, "%s%s%s", ctx.qry.path ? ctx.qry.path : "",
ctx.qry.path ? "/" : "", name);
if (!S_ISGITLINK(mode)) {
- type = odb_read_object_info(the_repository->objects, oid, &size);
+ type = oid_object_info(the_repository, oid, &size);
if (type == OBJ_BAD) {
htmlf("<tr><td colspan='3'>Bad object: %s %s</td></tr>",
name,
oid_to_hex(oid));
- goto cleanup;
+ free(name);
+ return 0;
}
}
@@ -242,21 +239,6 @@ static int ls_item(const struct object_id *oid, struct strbuf *base,
cgit_tree_link(name, NULL, class.buf, ctx.qry.head,
walk_tree_ctx->curr_rev, fullpath.buf);
}
- if (S_ISLNK(mode)) {
- html(" -> ");
- buf = odb_read_object(the_repository->objects, oid, &type, &size);
- if (!buf) {
- htmlf("Error reading object: %s", oid_to_hex(oid));
- goto cleanup;
- }
- strbuf_addbuf(&linkpath, &fullpath);
- strbuf_addf(&linkpath, "/../%s", buf);
- strbuf_normalize_path(&linkpath);
- cgit_tree_link(buf, NULL, class.buf, ctx.qry.head,
- walk_tree_ctx->curr_rev, linkpath.buf);
- free(buf);
- strbuf_release(&linkpath);
- }
htmlf("</td><td class='ls-size'>%li</td>", size);
html("<td>");
@@ -273,8 +255,6 @@ static int ls_item(const struct object_id *oid, struct strbuf *base,
cgit_blame_link("blame", NULL, "button", ctx.qry.head,
walk_tree_ctx->curr_rev, fullpath.buf);
html("</td></tr>\n");
-
-cleanup:
free(name);
strbuf_release(&fullpath);
strbuf_release(&class);
@@ -374,13 +354,13 @@ void cgit_print_tree(const char *rev, char *path)
if (!rev)
rev = ctx.qry.head;
- if (repo_get_oid(the_repository, rev, &oid)) {
+ if (get_oid(rev, &oid)) {
cgit_print_error_page(404, "Not found",
"Invalid revision name: %s", rev);
return;
}
commit = lookup_commit_reference(the_repository, &oid);
- if (!commit || repo_parse_commit(the_repository, commit)) {
+ if (!commit || parse_commit(commit)) {
cgit_print_error_page(404, "Not found",
"Invalid commit reference: %s", rev);
return;