aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--Makefile2
-rw-r--r--cgit.c2
m---------git0
-rw-r--r--ui-blob.c8
-rw-r--r--ui-plain.c13
-rw-r--r--ui-tree.c17
6 files changed, 19 insertions, 23 deletions
diff --git a/Makefile b/Makefile
index 2ff8a90..3697795 100644
--- a/Makefile
+++ b/Makefile
@@ -14,7 +14,7 @@ htmldir = $(docdir)
pdfdir = $(docdir)
mandir = $(prefix)/share/man
SHA1_HEADER = <openssl/sha.h>
-GIT_VER = 2.2.2
+GIT_VER = 2.3.0
GIT_URL = https://www.kernel.org/pub/software/scm/git/git-$(GIT_VER).tar.gz
INSTALL = install
COPYTREE = cp -r
diff --git a/cgit.c b/cgit.c
index 431e325..02dddda 100644
--- a/cgit.c
+++ b/cgit.c
@@ -603,7 +603,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
-Subproject fdf96a20acf96a6ac538df8113b2aafd6ed71d5
+Subproject 9874fca7122563e28d699a911404fc49d2a24f1
diff --git a/ui-blob.c b/ui-blob.c
index c2de8d6..a025bca 100644
--- a/ui-blob.c
+++ b/ui-blob.c
@@ -18,15 +18,15 @@ struct walk_tree_context {
int file_only:1;
};
-static int walk_tree(const unsigned char *sha1, const char *base, int baselen,
- const char *pathname, unsigned mode, int stage, void *cbdata)
+static int walk_tree(const unsigned char *sha1, struct strbuf *base,
+ const char *pathname, unsigned mode, int stage, void *cbdata)
{
struct walk_tree_context *walk_tree_ctx = cbdata;
if (walk_tree_ctx->file_only && !S_ISREG(mode))
return READ_TREE_RECURSIVE;
- if (strncmp(base, walk_tree_ctx->match_path, baselen)
- || strcmp(walk_tree_ctx->match_path + baselen, pathname))
+ if (strncmp(base->buf, walk_tree_ctx->match_path, base->len)
+ || strcmp(walk_tree_ctx->match_path + base->len, pathname))
return READ_TREE_RECURSIVE;
memmove(walk_tree_ctx->matched_sha1, sha1, 20);
walk_tree_ctx->found_path = 1;
diff --git a/ui-plain.c b/ui-plain.c
index 30fff89..b787bc3 100644
--- a/ui-plain.c
+++ b/ui-plain.c
@@ -173,23 +173,22 @@ static void print_dir_tail(void)
html(" </ul>\n</body></html>\n");
}
-static int walk_tree(const unsigned char *sha1, const char *base, int baselen,
- const char *pathname, unsigned mode, int stage,
- void *cbdata)
+static int walk_tree(const unsigned char *sha1, struct strbuf *base,
+ const char *pathname, unsigned mode, int stage, void *cbdata)
{
struct walk_tree_context *walk_tree_ctx = cbdata;
- if (baselen == walk_tree_ctx->match_baselen) {
+ if (base->len == walk_tree_ctx->match_baselen) {
if (S_ISREG(mode)) {
if (print_object(sha1, pathname))
walk_tree_ctx->match = 1;
} else if (S_ISDIR(mode)) {
- print_dir(sha1, base, baselen, pathname);
+ print_dir(sha1, base->buf, base->len, pathname);
walk_tree_ctx->match = 2;
return READ_TREE_RECURSIVE;
}
- } else if (baselen > walk_tree_ctx->match_baselen) {
- print_dir_entry(sha1, base, baselen, pathname, mode);
+ } else if (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)) {
return READ_TREE_RECURSIVE;
diff --git a/ui-tree.c b/ui-tree.c
index e4c3d22..4ab0137 100644
--- a/ui-tree.c
+++ b/ui-tree.c
@@ -121,9 +121,8 @@ static void print_object(const unsigned char *sha1, char *path, const char *base
}
-static int ls_item(const unsigned char *sha1, const char *base, int baselen,
- const char *pathname, unsigned int mode, int stage,
- void *cbdata)
+static int ls_item(const unsigned char *sha1, struct strbuf *base,
+ const char *pathname, unsigned mode, int stage, void *cbdata)
{
struct walk_tree_context *walk_tree_ctx = cbdata;
char *name;
@@ -216,16 +215,15 @@ static void ls_tree(const unsigned char *sha1, char *path, struct walk_tree_cont
}
-static int walk_tree(const unsigned char *sha1, const char *base, int baselen,
- const char *pathname, unsigned mode, int stage,
- void *cbdata)
+static int walk_tree(const unsigned char *sha1, struct strbuf *base,
+ const char *pathname, unsigned mode, int stage, void *cbdata)
{
struct walk_tree_context *walk_tree_ctx = cbdata;
static char buffer[PATH_MAX];
if (walk_tree_ctx->state == 0) {
- memcpy(buffer, base, baselen);
- strcpy(buffer + baselen, pathname);
+ memcpy(buffer, base->buf, base->len);
+ strcpy(buffer + base->len, pathname);
if (strcmp(walk_tree_ctx->match_path, buffer))
return READ_TREE_RECURSIVE;
@@ -238,11 +236,10 @@ static int walk_tree(const unsigned char *sha1, const char *base, int baselen,
return 0;
}
}
- ls_item(sha1, base, baselen, pathname, mode, stage, walk_tree_ctx);
+ ls_item(sha1, base, pathname, mode, stage, walk_tree_ctx);
return 0;
}
-
/*
* Show a tree or a blob
* rev: the commit pointing at the root tree object