Index: subversion/tests/cmdline/merge_tests.py
===================================================================
--- subversion/tests/cmdline/merge_tests.py	(revision 1511075)
+++ subversion/tests/cmdline/merge_tests.py	(working copy)
@@ -18690,6 +18690,65 @@
   # Commit the merge.
   #sbox.simple_commit()
 
+@XFail()
+@SkipUnless(server_has_mergeinfo)
+@Issue(4405)
+def merge_same_line_add_twice_gives_conflict(sbox):
+  "merging of the same line add twice conflicts"
+
+  sbox.build()
+  os.chdir(sbox.wc_dir)
+  sbox.wc_dir = ''
+
+  # r2: Create single-line test file
+  sbox.simple_mkdir('source')
+  sbox.simple_add_text('first line\n', 'source/file')
+  sbox.simple_commit()
+  
+  # r3: Create 'dest' branch
+  sbox.simple_copy('source', 'dest')
+  sbox.simple_commit()
+
+  # r4: Append second line to test file
+  sbox.simple_append('source/file', 'first line\nsecond line\n', truncate=True)
+  sbox.simple_commit()
+  
+  # r5: Remove second line from test file
+  sbox.simple_append('source/file', 'first line\n', truncate=True)
+  sbox.simple_commit()
+  
+  # r6: Re-append second line to test file
+  sbox.simple_append('source/file', 'first line\nsecond line\n', truncate=True)
+  sbox.simple_commit()
+  
+  sbox.simple_update()
+
+  # switch to dest branch
+  os.chdir(sbox.ospath('dest'))
+
+  # Merge 1st line add
+  expected_output = [
+    '--- Merging r4 into \'.\':\n',
+    'U    file\n',
+    '--- Recording mergeinfo for merge of r4 into \'.\':\n',
+    ' U   .\n',
+  ]
+  svntest.actions.run_and_verify_svn(None, expected_output, [],
+                                     'merge', '^/source', '-c', '4')
+
+  # Merge 2nd line add (should conflict)
+  expected_output = [
+    '--- Merging r6 into \'.\':\n',
+    'C    file\n',
+    '--- Recording mergeinfo for merge of r6 into \'.\':\n',
+    ' G   .\n',
+    'Summary of conflicts:\n',
+    '  Text conflicts: 1\n',
+  ]
+  svntest.actions.run_and_verify_svn(None, expected_output, [],
+                                     'merge', '^/source', '-c', '6')
+
+  
 ########################################################################
 # Run the tests
 
@@ -18835,6 +18894,7 @@
               single_editor_drive_merge_notifications,
               conflicted_split_merge_with_resolve,
               merge_to_empty_target_merge_to_infinite_target,
+              merge_same_line_add_twice_gives_conflict,
              ]
 
 if __name__ == '__main__':
