[PATCH 1/1] git: update to v2.16.0

Christian Hesse list at eworm.de
Thu Jan 18 09:19:31 CET 2018


From: Christian Hesse <mail at eworm.de>

Update to git version v2.16.0:

* refs: convert resolve_ref_unsafe to struct object_id
  (49e61479be913f67e66bb3fdf8de9475c41b58bd)
* diff: remove DIFF_OPT_SET macro
  (23dcf77f48feb49c54bad09210f093a799816334)
* log: add option to choose which refs to decorate
  (65516f586b69307f977cd67cc45513a296cabc25)
* diff: convert flags to be stored in bitfields
  (02f2f56bc377c287c411947d0e1482aac888f8db)

Signed-off-by: Christian Hesse <mail at eworm.de>
---
 Makefile    | 2 +-
 cgit.c      | 2 +-
 git         | 2 +-
 shared.c    | 2 +-
 ui-blame.c  | 2 +-
 ui-commit.c | 2 +-
 ui-diff.c   | 2 +-
 ui-log.c    | 7 +++----
 8 files changed, 10 insertions(+), 11 deletions(-)

diff --git a/Makefile b/Makefile
index 274f37e..8321ecc 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.15.1
+GIT_VER = 2.16.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 972a67e..a3702c2 100644
--- a/cgit.c
+++ b/cgit.c
@@ -478,7 +478,7 @@ static char *guess_defbranch(void)
 	const char *ref, *refname;
 	struct object_id oid;
 
-	ref = resolve_ref_unsafe("HEAD", 0, oid.hash, NULL);
+	ref = resolve_ref_unsafe("HEAD", 0, &oid, NULL);
 	if (!ref || !skip_prefix(ref, "refs/heads/", &refname))
 		return "master";
 	return xstrdup(refname);
diff --git a/git b/git
index 9b185be..2512f15 160000
--- a/git
+++ b/git
@@ -1 +1 @@
-Subproject commit 9b185bef0c15cec1ea8753ce091e42ea041f2c31
+Subproject commit 2512f15446149235156528dafbe75930c712b29e
diff --git a/shared.c b/shared.c
index df3f611..21ac8f4 100644
--- a/shared.c
+++ b/shared.c
@@ -346,7 +346,7 @@ void cgit_diff_tree(const struct object_id *old_oid,
 	opt.output_format = DIFF_FORMAT_CALLBACK;
 	opt.detect_rename = 1;
 	opt.rename_limit = ctx.cfg.renamelimit;
-	DIFF_OPT_SET(&opt, RECURSIVE);
+	opt.flags.recursive = 1;
 	if (ignorews)
 		DIFF_XDL_SET(&opt, IGNORE_WHITESPACE);
 	opt.format_callback = cgit_diff_tree_cb;
diff --git a/ui-blame.c b/ui-blame.c
index 62cf431..d4a4534 100644
--- a/ui-blame.c
+++ b/ui-blame.c
@@ -101,7 +101,7 @@ static void print_object(const unsigned char *sha1, const char *path,
 	argv_array_push(&rev_argv, "blame");
 	argv_array_push(&rev_argv, rev);
 	init_revisions(&revs, NULL);
-	DIFF_OPT_SET(&revs.diffopt, ALLOW_TEXTCONV);
+	revs.diffopt.flags.allow_textconv = 1;
 	setup_revisions(rev_argv.argc, rev_argv.argv, &revs, NULL);
 	init_scoreboard(&sb);
 	sb.revs = &revs;
diff --git a/ui-commit.c b/ui-commit.c
index 586fea0..abf58f6 100644
--- a/ui-commit.c
+++ b/ui-commit.c
@@ -41,7 +41,7 @@ void cgit_print_commit(char *hex, const char *prefix)
 
 	format_display_notes(&oid, &notes, PAGE_ENCODING, 0);
 
-	load_ref_decorations(DECORATE_FULL_REFS);
+	load_ref_decorations(NULL, DECORATE_FULL_REFS);
 
 	cgit_print_layout_start();
 	cgit_print_diff_ctrls();
diff --git a/ui-diff.c b/ui-diff.c
index c7fb49b..a10ce8a 100644
--- a/ui-diff.c
+++ b/ui-diff.c
@@ -444,7 +444,7 @@ void cgit_print_diff(const char *new_rev, const char *old_rev,
 
 		diff_setup(&diffopt);
 		diffopt.output_format = DIFF_FORMAT_PATCH;
-		DIFF_OPT_SET(&diffopt, RECURSIVE);
+		diffopt.flags.recursive = 1;
 		diff_setup_done(&diffopt);
 
 		ctx.page.mimetype = "text/plain";
diff --git a/ui-log.c b/ui-log.c
index 2d2bb31..8e36fba 100644
--- a/ui-log.c
+++ b/ui-log.c
@@ -119,8 +119,7 @@ static int show_commit(struct commit *commit, struct rev_info *revs)
 	struct commit_list *parents = commit->parents;
 	struct commit *parent;
 	int found = 0, saved_fmt;
-	unsigned saved_flags = revs->diffopt.flags;
-
+	struct diff_flags saved_flags = revs->diffopt.flags;
 
 	/* Always show if we're not in "follow" mode with a single file. */
 	if (!ctx.qry.follow)
@@ -149,7 +148,7 @@ static int show_commit(struct commit *commit, struct rev_info *revs)
 	add_lines = 0;
 	rem_lines = 0;
 
-	DIFF_OPT_SET(&revs->diffopt, RECURSIVE);
+	revs->diffopt.flags.recursive = 1;
 	diff_tree_oid(&parent->tree->object.oid,
 		      &commit->tree->object.oid,
 		      "", &revs->diffopt);
@@ -434,7 +433,7 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *pattern
 	rev.ignore_missing = 1;
 	rev.simplify_history = 1;
 	setup_revisions(rev_argv.argc, rev_argv.argv, &rev, NULL);
-	load_ref_decorations(DECORATE_FULL_REFS);
+	load_ref_decorations(NULL, DECORATE_FULL_REFS);
 	rev.show_decorations = 1;
 	rev.grep_filter.ignore_case = 1;
 


More information about the CGit mailing list