diff options
author | Christian Hesse | 2015-02-07 14:18:28 +0100 |
---|---|---|
committer | Jason A. Donenfeld | 2015-02-08 18:11:09 +0100 |
commit | 7358f63015a27d1c22816a3c1f734c3d4beed115 (patch) | |
tree | 5cb35efdca25827a939623c13c2513302976291b | |
parent | 1a9e56607eae2df2f4522b41294d94cb09fc4e5c (diff) | |
download | cgit-7358f63015a27d1c22816a3c1f734c3d4beed115.tar.gz |
git: update for v2.3.0
* 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 <mail@eworm.de>
-rw-r--r-- | Makefile | 2 | ||||
-rw-r--r-- | cgit.c | 2 | ||||
m--------- | git | 0 | ||||
-rw-r--r-- | ui-blob.c | 8 | ||||
-rw-r--r-- | ui-plain.c | 13 | ||||
-rw-r--r-- | ui-tree.c | 17 |
6 files changed, 19 insertions, 23 deletions
@@ -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 @@ -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 @@ -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; @@ -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; @@ -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 |