You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by pb...@apache.org on 2010/01/19 01:15:05 UTC

svn commit: r900616 - /subversion/trunk/subversion/libsvn_client/merge.c

Author: pburba
Date: Tue Jan 19 00:15:05 2010
New Revision: 900616

URL: http://svn.apache.org/viewvc?rev=900616&view=rev
Log:
Minor merge optimization.

* subversion/libsvn_client/merge.c
  (record_mergeinfo_for_dir_merge): Don't try to record mergeinfo,
   describing a merge, on deleted subtrees.


Modified:
    subversion/trunk/subversion/libsvn_client/merge.c

Modified: subversion/trunk/subversion/libsvn_client/merge.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/merge.c?rev=900616&r1=900615&r2=900616&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/merge.c (original)
+++ subversion/trunk/subversion/libsvn_client/merge.c Tue Jan 19 00:15:05 2010
@@ -6921,6 +6921,15 @@
         }
       else /* Record mergeinfo on CHILD. */
         {
+          svn_boolean_t child_is_deleted;
+
+          /* If CHILD is deleted we don't need to set mergeinfo on it. */
+          SVN_ERR(svn_wc__node_is_status_deleted(&child_is_deleted,
+                                                 merge_b->ctx->wc_ctx,
+                                                 child->abspath, iterpool));
+          if (child_is_deleted)
+            continue;
+
           child_repos_path = svn_dirent_is_child(merge_b->target_abspath,
                                                  child->abspath, iterpool);
           if (!child_repos_path)