subversion-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From s...@apache.org
Subject svn commit: r1245284 - in /subversion/trunk/subversion: libsvn_client/merge.c tests/cmdline/merge_reintegrate_tests.py
Date Fri, 17 Feb 2012 01:42:51 GMT
Author: stsp
Date: Fri Feb 17 01:42:50 2012
New Revision: 1245284

URL: http://svn.apache.org/viewvc?rev=1245284&view=rev
Log:
Fix issue #4052, "reintegrate merge and deleted symbolic links".

Merges would erroneously flag a tree conflict for any incoming deletion
of a symlink.

* subversion/libsvn_client/merge.c
  (files_same_p): Properly compare symlinks with one another, preventing a
   spurious tree conflict on symlinks via merge_file_deleted(). This used to
   work fine in 1.6. But at some point during 1.7 development it accidentally
   stopped working. The regression was probably introduced in r961254, since
   it changed the code path used for file comparison. I haven't built an older
   client to verify this claim, though. Too bad this slipped through the test
   suite back then.

* subversion/tests/cmdline/merge_reintegrate_tests.py
  (reintegrate_symlink_deletion): Remove XFail marker.

Modified:
    subversion/trunk/subversion/libsvn_client/merge.c
    subversion/trunk/subversion/tests/cmdline/merge_reintegrate_tests.py

Modified: subversion/trunk/subversion/libsvn_client/merge.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/merge.c?rev=1245284&r1=1245283&r2=1245284&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/merge.c (original)
+++ subversion/trunk/subversion/libsvn_client/merge.c Fri Feb 17 01:42:50 2012
@@ -1995,10 +1995,14 @@ files_same_p(svn_boolean_t *same,
       svn_opt_revision_t working_rev = { svn_opt_revision_working, { 0 } };
 
       /* Compare the file content, translating 'mine' to 'normal' form. */
-      SVN_ERR(svn_client__get_normalized_stream(&mine_stream, wc_ctx,
-                                                mine_abspath, &working_rev,
-                                                FALSE, TRUE, NULL, NULL,
-                                                scratch_pool, scratch_pool));
+      if (svn_prop_get_value(working_props, SVN_PROP_SPECIAL) != NULL)
+        SVN_ERR(svn_subst_read_specialfile(&mine_stream, mine_abspath,
+                                           scratch_pool, scratch_pool));
+      else
+        SVN_ERR(svn_client__get_normalized_stream(&mine_stream, wc_ctx,
+                                                  mine_abspath, &working_rev,
+                                                  FALSE, TRUE, NULL, NULL,
+                                                  scratch_pool, scratch_pool));
 
       SVN_ERR(svn_stream_open_readonly(&older_stream, older_abspath,
                                        scratch_pool, scratch_pool));

Modified: subversion/trunk/subversion/tests/cmdline/merge_reintegrate_tests.py
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/merge_reintegrate_tests.py?rev=1245284&r1=1245283&r2=1245284&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/merge_reintegrate_tests.py (original)
+++ subversion/trunk/subversion/tests/cmdline/merge_reintegrate_tests.py Fri Feb 17 01:42:50
2012
@@ -2544,7 +2544,6 @@ def reintegrate_replaced_source(sbox):
   
 #----------------------------------------------------------------------
 @SkipUnless(svntest.main.is_posix_os)
-@XFail()
 @Issue(4052)
 def reintegrate_symlink_deletion(sbox):
   "reintegrate symlink deletion"



Mime
View raw message