diff options
author | Junio C Hamano <gitster@pobox.com> | 2024-04-01 13:21:33 -0700 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2024-04-01 13:21:33 -0700 |
commit | ccdc7d98bb39aad1dc1bc78357a763d10fe14ddb (patch) | |
tree | 34fde699f6ff8d34ee660fc616eade80242baa4f /merge-recursive.c | |
parent | d6fd04375f9196f8b203d442f235bd96a1a068cc (diff) | |
parent | 5a99c1ac1a9640f7ee0374e9b90523f500bdbb5a (diff) | |
download | git-ccdc7d98bb39aad1dc1bc78357a763d10fe14ddb.tar.gz |
Merge branch 'pw/checkout-conflict-errorfix'
"git checkout --conflict=bad" reported a bad conflictStyle as if it
were given to a configuration variable; it has been corrected to
report that the command line option is bad.
* pw/checkout-conflict-errorfix:
checkout: fix interaction between --conflict and --merge
checkout: cleanup --conflict=<style> parsing
merge options: add a conflict style member
merge-ll: introduce LL_MERGE_OPTIONS_INIT
xdiff-interface: refactor parsing of merge.conflictstyle
Diffstat (limited to 'merge-recursive.c')
-rw-r--r-- | merge-recursive.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/merge-recursive.c b/merge-recursive.c index 69d67bef5a..8ff29ed09e 100644 --- a/merge-recursive.c +++ b/merge-recursive.c @@ -1048,13 +1048,14 @@ static int merge_3way(struct merge_options *opt, const int extra_marker_size) { mmfile_t orig, src1, src2; - struct ll_merge_options ll_opts = {0}; + struct ll_merge_options ll_opts = LL_MERGE_OPTIONS_INIT; char *base, *name1, *name2; enum ll_merge_result merge_status; ll_opts.renormalize = opt->renormalize; ll_opts.extra_marker_size = extra_marker_size; ll_opts.xdl_opts = opt->xdl_opts; + ll_opts.conflict_style = opt->conflict_style; if (opt->priv->call_depth) { ll_opts.virtual_ancestor = 1; @@ -3947,6 +3948,8 @@ void init_merge_options(struct merge_options *opt, opt->renormalize = 0; + opt->conflict_style = -1; + merge_recursive_config(opt); merge_verbosity = getenv("GIT_MERGE_VERBOSITY"); if (merge_verbosity) |