Hi,

Below is a patch that fixes the regression introduced in r1075802. THe
thread related to this regress can
be found here: http://svn.haxx.se/dev/archive-2011-03/0145.shtml.

Cheers,
Daniel B.

[[[
Fix regression introduced in r1075802, where conflict files were created
during
a dry-run merge.

* subversion/libsvn_wc/merge.c
 (merge_binary_file): Bail with conflict before running callback for a
dry-run
   merge.

* subversion/tests/cmdline/merge_tests.py
 (dry_run_merge_conflicting_binary): Remove XFail decorator.
]]]

Index: subversion/tests/cmdline/merge_tests.py
===================================================================
--- subversion/tests/cmdline/merge_tests.py    (revision 1081552)
+++ subversion/tests/cmdline/merge_tests.py    (working copy)
@@ -16580,7 +16580,6 @@ def merge_change_to_file_with_executable(sbox):
   if not os.access(beta_path, os.X_OK):
     raise svntest.Failure("beta is not marked as executable after commit")

-@XFail()
 def dry_run_merge_conflicting_binary(sbox):
   "dry run shouldn't make conflict resoln files"

Index: subversion/libsvn_wc/merge.c
===================================================================
--- subversion/libsvn_wc/merge.c    (revision 1081552)
+++ subversion/libsvn_wc/merge.c    (working copy)
@@ -1144,6 +1144,11 @@ merge_binary_file(svn_skel_t **work_items,
       *merge_outcome = svn_wc_merge_merged;
       return SVN_NO_ERROR;
     }
+  else if (dry_run)
+    {
+      *merge_outcome = svn_wc_merge_conflict;
+      return SVN_NO_ERROR;
+    }

   /* Give the conflict resolution callback a chance to clean
      up the conflict before we mark the file 'conflicted' */

Reply via email to