You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Daniel Becroft <dj...@gmail.com> on 2011/03/14 22:33:06 UTC

[PATCH] Fix regression introduced in r1075802

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' */

Re: [PATCH] Fix regression introduced in r1075802

Posted by Stefan Sperling <st...@elego.de>.
On Tue, Mar 15, 2011 at 07:33:06AM +1000, Daniel Becroft wrote:
> 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.
> ]]]

Thanks, committed in r1081576.

> 
> 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' */