Author: rhuijben
Date: Tue Jul  3 13:23:24 2012
New Revision: 1356717

URL: http://svn.apache.org/viewvc?rev=1356717&view=rev
Log:
Replace all calls to svn_wc__db_read_conflicts() by a call to a new
svn_wc__read_conflicts() to allow switching more of the wc_db api to
conflict skels in a future patch.

No functional changes, but removes some dead code.

* subversion/include/private/svn_wc_private.h
  (svn_wc__node_get_conflict_info): Remove unused function.

* subversion/libsvn_wc/adm_ops.c
  (svn_wc__delete_many,
   svn_wc__delete_internal): Update caller.

* subversion/libsvn_wc/conflicts.c
  (svn_wc__read_conflicts): New function.
  (resolve_conflict_on_node,
   conflict_status_walker): Update caller.

* subversion/libsvn_wc/copy.c
  (copy_versioned_file,
   remove_node_conflict_markers): Update caller.

* subversion/libsvn_wc/entries.c
  (read_one_entry): Update callers.

* subversion/libsvn_wc/info.c
  (build_info_for_node,
   svn_wc__get_info): Update callers.

* subversion/libsvn_wc/node.c
  (svn_wc__node_get_conflict_info): Remove function.

* subversion/libsvn_wc/props.c
  (svn_wc__get_prejfile_abspath): Remove function.

* subversion/libsvn_wc/questions.c
  (svn_wc__internal_conflicted_p): Update caller.

* subversion/libsvn_wc/tree_conflicts.c
  (svn_wc__get_tree_conflict): Update caller.

* subversion/libsvn_wc/wc.h
  (svn_wc__read_conflicts): New function.

* subversion/libsvn_wc/workqueue.c
  (run_set_text_conflict_markers,
   run_set_property_conflict_marker): Update callers.

Modified:
    subversion/trunk/subversion/include/private/svn_wc_private.h
    subversion/trunk/subversion/libsvn_wc/adm_ops.c
    subversion/trunk/subversion/libsvn_wc/conflicts.c
    subversion/trunk/subversion/libsvn_wc/copy.c
    subversion/trunk/subversion/libsvn_wc/entries.c
    subversion/trunk/subversion/libsvn_wc/info.c
    subversion/trunk/subversion/libsvn_wc/node.c
    subversion/trunk/subversion/libsvn_wc/props.c
    subversion/trunk/subversion/libsvn_wc/questions.c
    subversion/trunk/subversion/libsvn_wc/tree_conflicts.c
    subversion/trunk/subversion/libsvn_wc/wc.h
    subversion/trunk/subversion/libsvn_wc/workqueue.c

Modified: subversion/trunk/subversion/include/private/svn_wc_private.h
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/include/private/svn_wc_private.h?rev=1356717&r1=1356716&r2=1356717&view=diff
==============================================================================
--- subversion/trunk/subversion/include/private/svn_wc_private.h (original)
+++ subversion/trunk/subversion/include/private/svn_wc_private.h Tue Jul  3 
13:23:24 2012
@@ -728,27 +728,6 @@ svn_wc__node_get_lock_info(const char **
                            apr_pool_t *scratch_pool);
 
 /**
- * A hack to remove the last entry from libsvn_client.  This simply fetches an
- * some values from WC-NG, and puts the needed bits into the output parameters,
- * allocated in @a result_pool.
- *
- * All output arguments can be NULL to indicate that the
- * caller is not interested in the specific result.
- *
- * @a local_abspath and @a wc_ctx are what you think they are.
- */
-svn_error_t *
-svn_wc__node_get_conflict_info(const char **conflict_old,
-                               const char **conflict_new,
-                               const char **conflict_wrk,
-                               const char **prejfile,
-                               svn_wc_context_t *wc_ctx,
-                               const char *local_abspath,
-                               apr_pool_t *result_pool,
-                               apr_pool_t *scratch_pool);
-
-
-/**
  * Acquire a recursive write lock for @a local_abspath.  If @a lock_anchor
  * is true, determine if @a local_abspath has an anchor that should be locked
  * instead; otherwise, @a local_abspath must be a versioned directory.

Modified: subversion/trunk/subversion/libsvn_wc/adm_ops.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/adm_ops.c?rev=1356717&r1=1356716&r2=1356717&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/adm_ops.c (original)
+++ subversion/trunk/subversion/libsvn_wc/adm_ops.c Tue Jul  3 13:23:24 2012
@@ -691,8 +691,8 @@ svn_wc__delete_many(svn_wc_context_t *wc
 
       /* Read conflicts, to allow deleting the markers after updating the DB */
       if (!keep_local && conflicted)
-        SVN_ERR(svn_wc__db_read_conflicts(&conflicts, db, local_abspath,
-                                          scratch_pool, iterpool));
+        SVN_ERR(svn_wc__read_conflicts(&conflicts, db, local_abspath,
+                                       scratch_pool, iterpool));
 
     }
 
@@ -836,8 +836,8 @@ svn_wc__delete_internal(svn_wc_context_t
 
   /* Read conflicts, to allow deleting the markers after updating the DB */
   if (!keep_local && conflicted)
-    SVN_ERR(svn_wc__db_read_conflicts(&conflicts, db, local_abspath,
-                                      scratch_pool, scratch_pool));
+    SVN_ERR(svn_wc__read_conflicts(&conflicts, db, local_abspath,
+                                   scratch_pool, scratch_pool));
 
   SVN_ERR(svn_wc__db_op_delete(db, local_abspath, moved_to_abspath,
                                notify_func, notify_baton,

Modified: subversion/trunk/subversion/libsvn_wc/conflicts.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/conflicts.c?rev=1356717&r1=1356716&r2=1356717&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/conflicts.c (original)
+++ subversion/trunk/subversion/libsvn_wc/conflicts.c Tue Jul  3 13:23:24 2012
@@ -1791,6 +1791,19 @@ svn_wc__conflict_invoke_resolver(svn_wc_
   return SVN_NO_ERROR;
 }
 
+svn_error_t *
+svn_wc__read_conflicts(const apr_array_header_t **conflicts,
+                       svn_wc__db_t *db,
+                       const char *local_abspath,
+                       apr_pool_t *result_pool,
+                       apr_pool_t *scratch_pool)
+{
+  return svn_error_trace(
+            svn_wc__db_read_conflicts(conflicts,
+                                      db, local_abspath,
+                                      result_pool, scratch_pool));
+}
+
 
 /*** Resolving a conflict automatically ***/
 
@@ -1831,8 +1844,8 @@ resolve_conflict_on_node(svn_boolean_t *
 
   *did_resolve = FALSE;
 
-  SVN_ERR(svn_wc__db_read_conflicts(&conflicts, db, local_abspath,
-                                    pool, pool));
+  SVN_ERR(svn_wc__read_conflicts(&conflicts, db, local_abspath,
+                                 pool, pool));
 
   for (i = 0; i < conflicts->nelts; i++)
     {
@@ -2073,8 +2086,8 @@ conflict_status_walker(void *baton,
 
   iterpool = svn_pool_create(scratch_pool);
 
-  SVN_ERR(svn_wc__db_read_conflicts(&conflicts, db, local_abspath,
-                                    scratch_pool, iterpool));
+  SVN_ERR(svn_wc__read_conflicts(&conflicts, db, local_abspath,
+                                 scratch_pool, iterpool));
 
   for (i = 0; i < conflicts->nelts; i++)
     {

Modified: subversion/trunk/subversion/libsvn_wc/copy.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/copy.c?rev=1356717&r1=1356716&r2=1356717&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/copy.c (original)
+++ subversion/trunk/subversion/libsvn_wc/copy.c Tue Jul  3 13:23:24 2012
@@ -218,8 +218,8 @@ copy_versioned_file(svn_wc__db_t *db,
           const char *conflict_working = NULL;
 
           /* Is there a text conflict at the source path? */
-          SVN_ERR(svn_wc__db_read_conflicts(&conflicts, db, src_abspath,
-                                            scratch_pool, scratch_pool));
+          SVN_ERR(svn_wc__read_conflicts(&conflicts, db, src_abspath,
+                                         scratch_pool, scratch_pool));
 
           for (i = 0; i < conflicts->nelts; i++)
             {
@@ -793,8 +793,8 @@ remove_node_conflict_markers(svn_wc__db_
 {
   const apr_array_header_t *conflicts;
 
-  SVN_ERR(svn_wc__db_read_conflicts(&conflicts, db, src_abspath,
-                                    scratch_pool, scratch_pool));
+  SVN_ERR(svn_wc__read_conflicts(&conflicts, db, src_abspath,
+                                 scratch_pool, scratch_pool));
 
   /* Do we have conflict markers that should be removed? */
   if (conflicts != NULL)

Modified: subversion/trunk/subversion/libsvn_wc/entries.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/entries.c?rev=1356717&r1=1356716&r2=1356717&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/entries.c (original)
+++ subversion/trunk/subversion/libsvn_wc/entries.c Tue Jul  3 13:23:24 2012
@@ -452,9 +452,9 @@ read_one_entry(const svn_wc_entry_t **ne
           child_abspath = svn_dirent_join(dir_abspath, child_name,
                                           scratch_pool);
 
-          SVN_ERR(svn_wc__db_read_conflicts(&child_conflicts,
-                                            db, child_abspath,
-                                            scratch_pool, scratch_pool));
+          SVN_ERR(svn_wc__read_conflicts(&child_conflicts,
+                                         db, child_abspath,
+                                         scratch_pool, scratch_pool));
 
           for (j = 0; j < child_conflicts->nelts; j++)
             {
@@ -875,8 +875,8 @@ read_one_entry(const svn_wc_entry_t **ne
     {
       const apr_array_header_t *conflicts;
       int j;
-      SVN_ERR(svn_wc__db_read_conflicts(&conflicts, db, entry_abspath,
-                                        scratch_pool, scratch_pool));
+      SVN_ERR(svn_wc__read_conflicts(&conflicts, db, entry_abspath,
+                                     scratch_pool, scratch_pool));
 
       for (j = 0; j < conflicts->nelts; j++)
         {

Modified: subversion/trunk/subversion/libsvn_wc/info.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/info.c?rev=1356717&r1=1356716&r2=1356717&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/info.c (original)
+++ subversion/trunk/subversion/libsvn_wc/info.c Tue Jul  3 13:23:24 2012
@@ -279,9 +279,9 @@ build_info_for_node(svn_wc__info2_t **in
                                 local_abspath, result_pool, scratch_pool));
 
   if (conflicted)
-    SVN_ERR(svn_wc__db_read_conflicts(&wc_info->conflicts, db,
-                                      local_abspath,
-                                      result_pool, scratch_pool));
+    SVN_ERR(svn_wc__read_conflicts(&wc_info->conflicts, db,
+                                   local_abspath,
+                                   result_pool, scratch_pool));
   else
     wc_info->conflicts = NULL;
 
@@ -524,9 +524,9 @@ svn_wc__get_info(svn_wc_context_t *wc_ct
       info->repos_root_URL = repos_root_url;
       info->repos_UUID = repos_uuid;
 
-      SVN_ERR(svn_wc__db_read_conflicts(&info->wc_info->conflicts,
-                                        wc_ctx->db, this_abspath,
-                                        iterpool, iterpool));
+      SVN_ERR(svn_wc__read_conflicts(&info->wc_info->conflicts,
+                                     wc_ctx->db, this_abspath,
+                                     iterpool, iterpool));
 
       if (! info->wc_info->conflicts || ! info->wc_info->conflicts->nelts)
         continue;

Modified: subversion/trunk/subversion/libsvn_wc/node.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/node.c?rev=1356717&r1=1356716&r2=1356717&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/node.c (original)
+++ subversion/trunk/subversion/libsvn_wc/node.c Tue Jul  3 13:23:24 2012
@@ -1250,78 +1250,6 @@ svn_wc__node_get_schedule(svn_wc_schedul
 }
 
 svn_error_t *
-svn_wc__node_get_conflict_info(const char **conflict_old,
-                               const char **conflict_new,
-                               const char **conflict_wrk,
-                               const char **prejfile,
-                               svn_wc_context_t *wc_ctx,
-                               const char *local_abspath,
-                               apr_pool_t *result_pool,
-                               apr_pool_t *scratch_pool)
-{
-  svn_boolean_t conflicted;
-
-  SVN_ERR(svn_wc__db_read_info(NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-                               NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
-                               NULL, NULL, NULL, NULL, &conflicted,
-                               NULL, NULL, NULL, NULL, NULL, NULL,
-                               wc_ctx->db, local_abspath,
-                               scratch_pool, scratch_pool));
-
-  if (conflict_old)
-    *conflict_old = NULL;
-  if (conflict_new)
-    *conflict_new = NULL;
-  if (conflict_wrk)
-    *conflict_wrk = NULL;
-  if (prejfile)
-    *prejfile = NULL;
-
-  if (conflicted
-      && (conflict_old || conflict_new || conflict_wrk || prejfile))
-    {
-      const apr_array_header_t *conflicts;
-      int j;
-      SVN_ERR(svn_wc__db_read_conflicts(&conflicts, wc_ctx->db, local_abspath,
-                                        scratch_pool, scratch_pool));
-
-      for (j = 0; j < conflicts->nelts; j++)
-        {
-          const svn_wc_conflict_description2_t *cd;
-          cd = APR_ARRAY_IDX(conflicts, j,
-                             const svn_wc_conflict_description2_t *);
-
-          switch (cd->kind)
-            {
-            case svn_wc_conflict_kind_text:
-              if (conflict_old)
-                *conflict_old = svn_dirent_basename(cd->base_abspath,
-                                                    result_pool);
-
-              if (conflict_new)
-                *conflict_new = svn_dirent_basename(cd->their_abspath,
-                                                    result_pool);
-
-              if (conflict_wrk)
-                *conflict_wrk = svn_dirent_basename(cd->my_abspath,
-                                                    result_pool);
-              break;
-
-            case svn_wc_conflict_kind_property:
-              if (prejfile)
-                *prejfile = svn_dirent_basename(cd->their_abspath,
-                                                result_pool);
-              break;
-            case svn_wc_conflict_kind_tree:
-              break;
-            }
-        }
-    }
-
-  return SVN_NO_ERROR;
-}
-
-svn_error_t *
 svn_wc__node_clear_dav_cache_recursive(svn_wc_context_t *wc_ctx,
                                        const char *local_abspath,
                                        apr_pool_t *scratch_pool)

Modified: subversion/trunk/subversion/libsvn_wc/props.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/props.c?rev=1356717&r1=1356716&r2=1356717&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/props.c (original)
+++ subversion/trunk/subversion/libsvn_wc/props.c Tue Jul  3 13:23:24 2012
@@ -101,8 +101,8 @@ svn_wc__get_prejfile_abspath(const char 
   const apr_array_header_t *conflicts;
   int i;
 
-  SVN_ERR(svn_wc__db_read_conflicts(&conflicts, db, local_abspath,
-                                    scratch_pool, scratch_pool));
+  SVN_ERR(svn_wc__read_conflicts(&conflicts, db, local_abspath,
+                                 scratch_pool, scratch_pool));
 
   for (i = 0; i < conflicts->nelts; i++)
     {

Modified: subversion/trunk/subversion/libsvn_wc/questions.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/questions.c?rev=1356717&r1=1356716&r2=1356717&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/questions.c (original)
+++ subversion/trunk/subversion/libsvn_wc/questions.c Tue Jul  3 13:23:24 2012
@@ -392,7 +392,6 @@ svn_wc__internal_conflicted_p(svn_boolea
                               apr_pool_t *scratch_pool)
 {
   svn_node_kind_t kind;
-  svn_kind_t node_kind;
   const apr_array_header_t *conflicts;
   int i;
   svn_boolean_t conflicted;
@@ -406,7 +405,7 @@ svn_wc__internal_conflicted_p(svn_boolea
   if (tree_conflicted_p)
     *tree_conflicted_p = FALSE;
 
-  SVN_ERR(svn_wc__db_read_info(NULL, &node_kind, NULL, NULL, NULL, NULL, NULL,
+  SVN_ERR(svn_wc__db_read_info(NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL,
                                NULL, NULL, NULL, NULL, NULL, &conflicted,
                                NULL, NULL, NULL, NULL, NULL, NULL,
@@ -416,9 +415,8 @@ svn_wc__internal_conflicted_p(svn_boolea
   if (!conflicted)
     return SVN_NO_ERROR;
 
-
-  SVN_ERR(svn_wc__db_read_conflicts(&conflicts, db, local_abspath,
-                                    scratch_pool, scratch_pool));
+  SVN_ERR(svn_wc__read_conflicts(&conflicts, db, local_abspath,
+                                 scratch_pool, scratch_pool));
 
   for (i = 0; i < conflicts->nelts; i++)
     {

Modified: subversion/trunk/subversion/libsvn_wc/tree_conflicts.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/tree_conflicts.c?rev=1356717&r1=1356716&r2=1356717&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/tree_conflicts.c (original)
+++ subversion/trunk/subversion/libsvn_wc/tree_conflicts.c Tue Jul  3 13:23:24 
2012
@@ -472,9 +472,9 @@ svn_wc__get_tree_conflict(const svn_wc_c
   int i;
   SVN_ERR_ASSERT(svn_dirent_is_absolute(local_abspath));
 
-  SVN_ERR(svn_wc__db_read_conflicts(&conflicts,
-                                    wc_ctx->db, local_abspath,
-                                    scratch_pool, scratch_pool));
+  SVN_ERR(svn_wc__read_conflicts(&conflicts,
+                                 wc_ctx->db, local_abspath,
+                                 scratch_pool, scratch_pool));
 
   if (!conflicts || conflicts->nelts == 0)
     {

Modified: subversion/trunk/subversion/libsvn_wc/wc.h
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/wc.h?rev=1356717&r1=1356716&r2=1356717&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/wc.h (original)
+++ subversion/trunk/subversion/libsvn_wc/wc.h Tue Jul  3 13:23:24 2012
@@ -690,6 +690,22 @@ svn_wc__write_check(svn_wc__db_t *db,
                     const char *local_abspath,
                     apr_pool_t *scratch_pool);
 
+/* Read into CONFLICTS svn_wc_conflict_description2_t* structs
+ * for all conflicts that have LOCAL_ABSPATH as victim.
+ *
+ * Victim must be versioned or be part of a tree conflict.
+ *
+ * Allocate *CONFLICTS in RESULT_POOL and do temporary allocations in
+ * SCRATCH_POOL
+ */
+svn_error_t *
+svn_wc__read_conflicts(const apr_array_header_t **conflicts,
+                       svn_wc__db_t *db,
+                       const char *local_abspath,
+                       apr_pool_t *result_pool,
+                       apr_pool_t *scratch_pool);
+
+
 /* Perform the actual merge of file changes between an original file,
    identified by ORIGINAL_CHECKSUM (an empty file if NULL) to a new file
    identified by NEW_CHECKSUM in the working copy identified by WRI_ABSPATH.

Modified: subversion/trunk/subversion/libsvn_wc/workqueue.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/workqueue.c?rev=1356717&r1=1356716&r2=1356717&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/workqueue.c (original)
+++ subversion/trunk/subversion/libsvn_wc/workqueue.c Tue Jul  3 13:23:24 2012
@@ -1338,8 +1338,8 @@ run_set_text_conflict_markers(svn_wc__db
 
     conflict_skel = svn_wc__conflict_skel_create(scratch_pool);
 
-    SVN_ERR(svn_wc__db_read_conflicts(&conflicts, db, local_abspath,
-                                      scratch_pool, scratch_pool));
+    SVN_ERR(svn_wc__read_conflicts(&conflicts, db, local_abspath,
+                                   scratch_pool, scratch_pool));
 
     if (conflicts)
       for (i = 0; i < conflicts->nelts; i++)
@@ -1425,8 +1425,8 @@ run_set_property_conflict_marker(svn_wc_
 
     conflict_skel = svn_wc__conflict_skel_create(scratch_pool);
 
-    SVN_ERR(svn_wc__db_read_conflicts(&conflicts, db, local_abspath,
-                                      scratch_pool, scratch_pool));
+    SVN_ERR(svn_wc__read_conflicts(&conflicts, db, local_abspath,
+                                   scratch_pool, scratch_pool));
 
     if (conflicts)
       for (i = 0; i < conflicts->nelts; i++)


Reply via email to