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,