summaryrefslogtreecommitdiff
path: root/src/merge.c
diff options
context:
space:
mode:
authorEdward Thomson <ethomson@github.com>2017-01-01 22:19:23 +0000
committerEdward Thomson <ethomson@github.com>2017-01-01 22:34:43 +0000
commit19ed4d0ca3fdd2f46e1391597aa2b70e4f330c6f (patch)
tree8d6c7e9202b2f0c9a0d0f7771fa1afe8fd224fa7 /src/merge.c
parent805b90aac4a0bc4a388a28f0086ba8a7cf7e62dc (diff)
downloadlibgit2-19ed4d0ca3fdd2f46e1391597aa2b70e4f330c6f.tar.gz
merge: set default rename threshold
When `GIT_MERGE_FIND_RENAMES` is set, provide a default for `rename_threshold` when it is unset.
Diffstat (limited to 'src/merge.c')
-rw-r--r--src/merge.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/merge.c b/src/merge.c
index 1142917bd..c75cab635 100644
--- a/src/merge.c
+++ b/src/merge.c
@@ -1713,15 +1713,15 @@ static int merge_normalize_opts(
if ((error = git_repository_config__weakptr(&cfg, repo)) < 0)
return error;
- if (given != NULL)
+ if (given != NULL) {
memcpy(opts, given, sizeof(git_merge_options));
- else {
+ } else {
git_merge_options init = GIT_MERGE_OPTIONS_INIT;
memcpy(opts, &init, sizeof(init));
+ }
- opts->flags = GIT_MERGE_FIND_RENAMES;
+ if ((opts->flags & GIT_MERGE_FIND_RENAMES) && !opts->rename_threshold)
opts->rename_threshold = GIT_MERGE_DEFAULT_RENAME_THRESHOLD;
- }
if (given && given->default_driver) {
opts->default_driver = git__strdup(given->default_driver);