You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by st...@apache.org on 2016/01/30 17:42:48 UTC

svn commit: r1727725 - /subversion/trunk/subversion/svn/conflict-callbacks.c

Author: stsp
Date: Sat Jan 30 16:42:48 2016
New Revision: 1727725

URL: http://svn.apache.org/viewvc?rev=1727725&view=rev
Log:
* subversion/svn/conflict-callbacks.c
  (mark_conflict_resolved): Use the new client conflict API to mark
   conflicts as resolved, instead of calling into libsvn_wc.

Modified:
    subversion/trunk/subversion/svn/conflict-callbacks.c

Modified: subversion/trunk/subversion/svn/conflict-callbacks.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/conflict-callbacks.c?rev=1727725&r1=1727724&r2=1727725&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/conflict-callbacks.c (original)
+++ subversion/trunk/subversion/svn/conflict-callbacks.c Sat Jan 30 16:42:48 2016
@@ -733,35 +733,31 @@ mark_conflict_resolved(svn_client_confli
     = svn_cl__local_style_skip_ancestor(
         path_prefix, svn_client_conflict_get_local_abspath(conflict),
         scratch_pool);
-  const char *local_abspath;
-  const char *lock_abspath;
-  svn_error_t *err;
 
-  local_abspath = svn_client_conflict_get_local_abspath(conflict);
-
-  /* ### for now, resolve conflict using legacy API */
-  SVN_ERR(svn_wc__acquire_write_lock_for_resolve(&lock_abspath,
-                                                 ctx->wc_ctx,
-                                                 local_abspath,
-                                                 scratch_pool,
-                                                 scratch_pool));
-  err = svn_wc_resolved_conflict5(
-          ctx->wc_ctx, local_abspath, svn_depth_empty, /* ??? */
-          text_conflicted, propname, tree_conflicted,
-          svn_client_conflict_option_id_to_wc_conflict_choice(option_id),
-          ctx->cancel_func, ctx->cancel_baton,
-          ctx->notify_func2, ctx->notify_baton2,
-          scratch_pool);
-
-  err = svn_error_compose_create(err, svn_wc__release_write_lock(ctx->wc_ctx,
-                                                                 lock_abspath,
-                                                                 scratch_pool));
-  svn_io_sleep_for_timestamps(local_abspath, scratch_pool);
-
-  SVN_ERR(err);
-
-  svn_cl__conflict_stats_resolved(conflict_stats, local_relpath,
-                                  svn_client_conflict_get_kind(conflict));
+  if (text_conflicted)
+    {
+      SVN_ERR(svn_client_conflict_text_resolve_by_id(conflict, option_id,
+                                                     scratch_pool));
+      svn_cl__conflict_stats_resolved(conflict_stats, local_relpath,
+                                      svn_wc_conflict_kind_text);
+    }
+
+  if (propname)
+    {
+      SVN_ERR(svn_client_conflict_prop_resolve_by_id(conflict, propname,
+                                                     option_id,
+                                                     scratch_pool));
+      svn_cl__conflict_stats_resolved(conflict_stats, local_relpath,
+                                      svn_wc_conflict_kind_property);
+    }
+
+  if (tree_conflicted)
+    {
+      SVN_ERR(svn_client_conflict_tree_resolve_by_id(conflict, option_id,
+                                                     scratch_pool));
+      svn_cl__conflict_stats_resolved(conflict_stats, local_relpath,
+                                      svn_wc_conflict_kind_tree);
+    }
 
   return SVN_NO_ERROR;
 }