From mboxrd@z Thu Jan 1 00:00:00 1970 From: list at eworm.de (list at eworm.de) Date: Tue, 13 Jan 2015 09:56:47 +0100 Subject: [PATCH 1/1] git: preview for v2.3.0-rc0 Message-ID: <1421139407-15727-1-git-send-email-list@eworm.de> From: Christian Hesse * sort_string_list(): rename to string_list_sort() (upstream commit 3383e199) * update read_tree_recursive callback to pass strbuf as base (upstream commit 6a0b0b6d) Signed-off-by: Christian Hesse --- Makefile | 4 ++-- cgit.c | 2 +- git | 2 +- ui-blob.c | 14 +++++++++++--- ui-plain.c | 10 +++++++++- ui-tree.c | 21 +++++++++++++++++++-- 6 files changed, 43 insertions(+), 10 deletions(-) diff --git a/Makefile b/Makefile index 38bf595..36c30a8 100644 --- a/Makefile +++ b/Makefile @@ -14,8 +14,8 @@ htmldir = $(docdir) pdfdir = $(docdir) mandir = $(prefix)/share/man SHA1_HEADER = -GIT_VER = 2.2.1 -GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.gz +GIT_VER = 2.3.0.rc0 +GIT_URL = https://www.kernel.org/pub/software/scm/git/testing/git-$(GIT_VER).tar.gz INSTALL = install COPYTREE = cp -r MAN5_TXT = $(wildcard *.5.txt) diff --git a/cgit.c b/cgit.c index 79019c2..df301ea 100644 --- a/cgit.c +++ b/cgit.c @@ -599,7 +599,7 @@ static int prepare_repo_cmd(void) free(tmp); return 1; } - sort_string_list(&ctx.repo->submodules); + string_list_sort(&ctx.repo->submodules); cgit_prepare_repo_env(ctx.repo); choose_readme(ctx.repo); return 0; diff --git a/git b/git index 9b7cbb3..addfb21 160000 --- a/git +++ b/git @@ -1 +1 @@ -Subproject commit 9b7cbb315923e61bb0c4297c701089f30e116750 +Subproject commit addfb21a94fb4e6b9d07b270f7bb3748767a8f38 diff --git a/ui-blob.c b/ui-blob.c index c2de8d6..90fcf81 100644 --- a/ui-blob.c +++ b/ui-blob.c @@ -33,6 +33,14 @@ static int walk_tree(const unsigned char *sha1, const char *base, int baselen, return 0; } +static int walk_tree_buf(const unsigned char *sha1, struct strbuf *base, + const char *filename, unsigned mode, int stage, + void *context) +{ + return walk_tree(sha1, base->buf, base->len, + filename, mode, stage, context); +} + int cgit_ref_path_exists(const char *path, const char *ref, int file_only) { unsigned char sha1[20]; @@ -56,7 +64,7 @@ int cgit_ref_path_exists(const char *path, const char *ref, int file_only) return 0; if (sha1_object_info(sha1, &size) != OBJ_COMMIT) return 0; - read_tree_recursive(lookup_commit_reference(sha1)->tree, "", 0, 0, &paths, walk_tree, &walk_tree_ctx); + read_tree_recursive(lookup_commit_reference(sha1)->tree, "", 0, 0, &paths, walk_tree_buf, &walk_tree_ctx); return walk_tree_ctx.found_path; } @@ -87,7 +95,7 @@ int cgit_print_file(char *path, const char *head, int file_only) type = sha1_object_info(sha1, &size); if (type == OBJ_COMMIT && path) { commit = lookup_commit_reference(sha1); - read_tree_recursive(commit->tree, "", 0, 0, &paths, walk_tree, &walk_tree_ctx); + read_tree_recursive(commit->tree, "", 0, 0, &paths, walk_tree_buf, &walk_tree_ctx); if (!walk_tree_ctx.found_path) return -1; type = sha1_object_info(sha1, &size); @@ -140,7 +148,7 @@ void cgit_print_blob(const char *hex, char *path, const char *head, int file_onl if ((!hex) && type == OBJ_COMMIT && path) { commit = lookup_commit_reference(sha1); - read_tree_recursive(commit->tree, "", 0, 0, &paths, walk_tree, &walk_tree_ctx); + read_tree_recursive(commit->tree, "", 0, 0, &paths, walk_tree_buf, &walk_tree_ctx); type = sha1_object_info(sha1,&size); } diff --git a/ui-plain.c b/ui-plain.c index 30fff89..891e9f7 100644 --- a/ui-plain.c +++ b/ui-plain.c @@ -198,6 +198,14 @@ static int walk_tree(const unsigned char *sha1, const char *base, int baselen, return 0; } +static int walk_tree_buf(const unsigned char *sha1, struct strbuf *base, + const char *filename, unsigned mode, int stage, + void *context) +{ + return walk_tree(sha1, base->buf, base->len, + filename, mode, stage, context); +} + static int basedir_len(const char *path) { char *p = strrchr(path, '/'); @@ -243,7 +251,7 @@ void cgit_print_plain(void) } else walk_tree_ctx.match_baselen = basedir_len(path_items.match); - read_tree_recursive(commit->tree, "", 0, 0, &paths, walk_tree, &walk_tree_ctx); + read_tree_recursive(commit->tree, "", 0, 0, &paths, walk_tree_buf, &walk_tree_ctx); if (!walk_tree_ctx.match) html_status(404, "Not found", 0); else if (walk_tree_ctx.match == 2) diff --git a/ui-tree.c b/ui-tree.c index e4c3d22..7cc45e9 100644 --- a/ui-tree.c +++ b/ui-tree.c @@ -181,6 +181,15 @@ static int ls_item(const unsigned char *sha1, const char *base, int baselen, return 0; } +static int ls_item_buf(const unsigned char *sha1, struct strbuf *base, + const char *filename, unsigned mode, int stage, + void *context) +{ + return ls_item(sha1, base->buf, base->len, + filename, mode, stage, context); +} + + static void ls_head() { html("\n"); @@ -211,7 +220,7 @@ static void ls_tree(const unsigned char *sha1, char *path, struct walk_tree_cont } ls_head(); - read_tree_recursive(tree, "", 0, 1, &paths, ls_item, walk_tree_ctx); + read_tree_recursive(tree, "", 0, 1, &paths, ls_item_buf, walk_tree_ctx); ls_tail(); } @@ -242,6 +251,14 @@ static int walk_tree(const unsigned char *sha1, const char *base, int baselen, return 0; } +static int walk_tree_buf(const unsigned char *sha1, struct strbuf *base, + const char *filename, unsigned mode, int stage, + void *context) +{ + return walk_tree(sha1, base->buf, base->len, + filename, mode, stage, context); +} + /* * Show a tree or a blob @@ -285,7 +302,7 @@ void cgit_print_tree(const char *rev, char *path) goto cleanup; } - read_tree_recursive(commit->tree, "", 0, 0, &paths, walk_tree, &walk_tree_ctx); + read_tree_recursive(commit->tree, "", 0, 0, &paths, walk_tree_buf, &walk_tree_ctx); if (walk_tree_ctx.state == 1) ls_tail(); -- 2.2.1