Author: rhuijben
Date: Sun Jul 10 14:45:14 2011
New Revision: 1144869

URL: http://svn.apache.org/viewvc?rev=1144869&view=rev
Log:
Make depth_as_sticky an argument of the status editor to match the code of
the other editors in libsvn_wc.

* subversion/include/svn_wc.h
  (svn_wc_get_status_editor5): Add argument.

* subversion/libsvn_client/status.c
  (svn_client_status5): Update caller.

* subversion/libsvn_wc/deprecated.c
  (svn_wc_get_status_editor4): Update caller.

* subversion/libsvn_wc/status.c
  (svn_wc_get_status_editor5): Use the new argument for disabling the ambient
    depth filter.

Modified:
    subversion/trunk/subversion/include/svn_wc.h
    subversion/trunk/subversion/libsvn_client/status.c
    subversion/trunk/subversion/libsvn_wc/deprecated.c
    subversion/trunk/subversion/libsvn_wc/status.c

Modified: subversion/trunk/subversion/include/svn_wc.h
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/include/svn_wc.h?rev=1144869&r1=1144868&r2=1144869&view=diff
==============================================================================
--- subversion/trunk/subversion/include/svn_wc.h (original)
+++ subversion/trunk/subversion/include/svn_wc.h Sun Jul 10 14:45:14 2011
@@ -4018,6 +4018,10 @@ svn_wc_walk_status(svn_wc_context_t *wc_
  * If @a cancel_func is non-NULL, call it with @a cancel_baton while building
  * the @a statushash to determine if the client has canceled the operation.
  *
+ * If @a depth_as_sticky is set handle @a depth like when depth_is_sticky is
+ * passed for updating. This will show excluded nodes show up as added in the
+ * repository.
+ *
  * If @a server_performs_filtering is TRUE, assume that the server handles
  * the ambient depth filtering, so this doesn't have to be handled in the
  * editor.
@@ -4039,6 +4043,7 @@ svn_wc_get_status_editor5(const svn_delt
                           svn_depth_t depth,
                           svn_boolean_t get_all,
                           svn_boolean_t no_ignore,
+                          svn_boolean_t depth_as_sticky,
                           svn_boolean_t server_performs_filtering,
                           const apr_array_header_t *ignore_patterns,
                           svn_wc_status_func4_t status_func,

Modified: subversion/trunk/subversion/libsvn_client/status.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/status.c?rev=1144869&r1=1144868&r2=1144869&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_client/status.c (original)
+++ subversion/trunk/subversion/libsvn_client/status.c Sun Jul 10 14:45:14 2011
@@ -377,7 +377,8 @@ svn_client_status5(svn_revnum_t *result_
                                     &edit_revision, ctx->wc_ctx,
                                     dir_abspath, target_basename,
                                     depth, get_all,
-                                    no_ignore, server_supports_depth,
+                                    no_ignore, depth_as_sticky,
+                                    server_supports_depth,
                                     ignores, tweak_status, &sb,
                                     ctx->cancel_func, ctx->cancel_baton,
                                     pool, pool));

Modified: subversion/trunk/subversion/libsvn_wc/deprecated.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/deprecated.c?rev=1144869&r1=1144868&r2=1144869&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/deprecated.c (original)
+++ subversion/trunk/subversion/libsvn_wc/deprecated.c Sun Jul 10 14:45:14 2011
@@ -2631,10 +2631,15 @@ svn_wc_get_status_editor4(const svn_delt
       swb->anchor_relpath = NULL;
     }
 
+  /* Before subversion 1.7 status always handled depth as sticky. 1.7 made
+     the output of svn status by default match the result of what would be
+     updated by a similar svn update. (Following the documentation) */
+
   SVN_ERR(svn_wc_get_status_editor5(editor, edit_baton, set_locks_baton,
                                     edit_revision, wc_ctx, anchor_abspath,
                                     target, depth, get_all,
                                     no_ignore,
+                                    (depth != svn_depth_unknown) /*as_sticky*/,
                                     FALSE /* server_performs_filtering */,
                                     ignore_patterns,
                                     status4_wrapper_func, swb,

Modified: subversion/trunk/subversion/libsvn_wc/status.c
URL: 
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/status.c?rev=1144869&r1=1144868&r2=1144869&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/status.c (original)
+++ subversion/trunk/subversion/libsvn_wc/status.c Sun Jul 10 14:45:14 2011
@@ -2178,6 +2178,7 @@ svn_wc_get_status_editor5(const svn_delt
                           svn_depth_t depth,
                           svn_boolean_t get_all,
                           svn_boolean_t no_ignore,
+                          svn_boolean_t depth_as_sticky,
                           svn_boolean_t server_performs_filtering,
                           const apr_array_header_t *ignore_patterns,
                           svn_wc_status_func4_t status_func,
@@ -2258,8 +2259,8 @@ svn_wc_get_status_editor5(const svn_delt
   inner_editor = tree_editor;
   inner_baton = eb;
 
-  if (!server_performs_filtering
-      && depth == svn_depth_unknown)
+  if (!server_performs_filtering 
+      && !depth_as_sticky)
     SVN_ERR(svn_wc__ambient_depth_filter_editor(&inner_editor,
                                                 &inner_baton,
                                                 wc_ctx->db,


Reply via email to