Author: stsp
Date: Mon Oct 17 11:28:35 2011
New Revision: 1185110

URL: http://svn.apache.org/viewvc?rev=1185110&view=rev
Log:
During update, auto-merge incoming file additions destined for a directory
that was moved away.

* subversion/libsvn_wc/update_editor.c
  (add_file): Set the MOVED_TO_ABSPATH in the file baton if the parent
   was moved away. All other magic is already being handled elsewhere.

Modified:
    subversion/trunk/subversion/libsvn_wc/update_editor.c

Modified: subversion/trunk/subversion/libsvn_wc/update_editor.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/update_editor.c?rev=1185110&r1=1185109&r2=1185110&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/update_editor.c (original)
+++ subversion/trunk/subversion/libsvn_wc/update_editor.c Mon Oct 17 11:28:35 
2011
@@ -3369,6 +3369,15 @@ add_file(const char *path,
       do_notification(eb, fb->local_abspath, svn_node_file,
                       svn_wc_notify_tree_conflict, scratch_pool);
     }
+  else if (wc_kind == svn_kind_unknown &&
+           versioned_locally_and_present == FALSE &&
+           pb->moved_to_abspath)
+    {
+      /* The parent directory of the file we're adding was moved.
+       * Add the new file at the new location. */
+      fb->moved_to_abspath = svn_dirent_join(pb->moved_to_abspath,
+                                             fb->name, fb->pool);
+    }
 
   svn_pool_destroy(scratch_pool);
 


Reply via email to