Author: stsp
Date: Wed Feb 16 19:27:40 2011
New Revision: 1071368
URL: http://svn.apache.org/viewvc?rev=1071368&view=rev
Log:
Make 'svn status' report nested working copies as unversioned regardless
of the format of their working copies.
* subversion/svn/status.c,
subversion/libsvn_wc/status.c
(print_status, assemble_unversioned): Consider other format working
copies as unversioned by ignoring SVN_ERR_WC_UPGRADE_REQUIRED error.
* subversion/tests/cmdline/stat_tests.py
(status_nested_wc_old_format): Remove XFail marker.
Patch by: Noorul Islam K M <noorul{_AT_}collab.net>
Modified:
subversion/trunk/subversion/libsvn_wc/status.c
subversion/trunk/subversion/svn/status.c
subversion/trunk/subversion/tests/cmdline/stat_tests.py
Modified: subversion/trunk/subversion/libsvn_wc/status.c
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/status.c?rev=1071368&r1=1071367&r2=1071368&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/status.c (original)
+++ subversion/trunk/subversion/libsvn_wc/status.c Wed Feb 16 19:27:40 2011
@@ -695,13 +695,21 @@ assemble_unversioned(svn_wc_status3_t **
{
svn_wc_status3_t *stat;
const svn_wc_conflict_description2_t *tree_conflict;
+ svn_error_t *err;
/* Find out whether the path is a tree conflict victim.
This function will set tree_conflict to NULL if the path
is not a victim. */
- SVN_ERR(svn_wc__db_op_read_tree_conflict(&tree_conflict,
- db, local_abspath,
- scratch_pool, scratch_pool));
+ err = svn_wc__db_op_read_tree_conflict(&tree_conflict,
+ db, local_abspath,
+ scratch_pool, scratch_pool);
+
+ if (path_kind == svn_node_dir &&
+ err &&
+ err->apr_err == SVN_ERR_WC_UPGRADE_REQUIRED)
+ svn_error_clear(err);
+ else
+ SVN_ERR(err);
/* return a fairly blank structure. */
stat = apr_pcalloc(result_pool, sizeof(**status));
Modified: subversion/trunk/subversion/svn/status.c
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/status.c?rev=1071368&r1=1071367&r2=1071368&view=diff
==============================================================================
--- subversion/trunk/subversion/svn/status.c (original)
+++ subversion/trunk/subversion/svn/status.c Wed Feb 16 19:27:40 2011
@@ -150,12 +150,17 @@ print_status(const char *path,
svn_boolean_t text_conflicted;
svn_boolean_t prop_conflicted;
svn_boolean_t tree_conflicted;
+ svn_error_t *err;
- SVN_ERR(svn_wc__node_check_conflicts(&prop_conflicted,
- &text_conflicted,
- &tree_conflicted, ctx->wc_ctx,
- local_abspath, pool, pool));
+ err = svn_wc__node_check_conflicts(&prop_conflicted,
+ &text_conflicted,
+ &tree_conflicted, ctx->wc_ctx,
+ local_abspath, pool, pool);
+ if (err && err->apr_err == SVN_ERR_WC_UPGRADE_REQUIRED)
+ svn_error_clear(err);
+ else
+ SVN_ERR(err);
if (tree_conflicted)
{
Modified: subversion/trunk/subversion/tests/cmdline/stat_tests.py
URL:
http://svn.apache.org/viewvc/subversion/trunk/subversion/tests/cmdline/stat_tests.py?rev=1071368&r1=1071367&r2=1071368&view=diff
==============================================================================
--- subversion/trunk/subversion/tests/cmdline/stat_tests.py (original)
+++ subversion/trunk/subversion/tests/cmdline/stat_tests.py Wed Feb 16 19:27:40
2011
@@ -1793,7 +1793,6 @@ def status_with_tree_conflicts(sbox):
#----------------------------------------------------------------------
# Regression for issue #3742
-@XFail()
@Issue(3742)
def status_nested_wc_old_format(sbox):
"status on wc with nested old-format wc"