summaryrefslogtreecommitdiff
path: root/merge-recursive.c
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2017-11-27 02:06:34 (GMT)
committerJunio C Hamano <gitster@pobox.com>2017-11-27 02:06:34 (GMT)
commitf70a50fc48e4f3e00120153c68df1acd2a5aa382 (patch)
treecbcc26717ba17dadd6e492e5245d5406cc6f6a43 /merge-recursive.c
parentc5e763083fa675629c7d936d72fb67d8f03e0846 (diff)
parentc641ca67072946f95f87e7b21f13f3d4e73701e3 (diff)
downloadgit-f70a50fc48e4f3e00120153c68df1acd2a5aa382.zip
git-f70a50fc48e4f3e00120153c68df1acd2a5aa382.tar.gz
git-f70a50fc48e4f3e00120153c68df1acd2a5aa382.tar.bz2
Merge branch 'sb/test-cherry-pick-submodule-getting-in-a-way'
The three-way merge performed by "git cherry-pick" was confused when a new submodule was added in the meantime, which has been fixed (or "papered over"). * sb/test-cherry-pick-submodule-getting-in-a-way: merge-recursive: handle addition of submodule on our side of history t/3512: demonstrate unrelated submodule/file conflict as cherry-pick failure
Diffstat (limited to 'merge-recursive.c')
-rw-r--r--merge-recursive.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/merge-recursive.c b/merge-recursive.c
index 85b4e58..d00b274 100644
--- a/merge-recursive.c
+++ b/merge-recursive.c
@@ -1901,8 +1901,9 @@ static int process_entry(struct merge_options *o,
oid = b_oid;
conf = _("directory/file");
}
- if (dir_in_way(path, !o->call_depth,
- S_ISGITLINK(a_mode))) {
+ if (dir_in_way(path,
+ !o->call_depth && !S_ISGITLINK(a_mode),
+ 0)) {
char *new_path = unique_path(o, path, add_branch);
clean_merge = 0;
output(o, 1, _("CONFLICT (%s): There is a directory with name %s in %s. "