Author: stsp Date: Thu Aug 14 13:08:06 2014 New Revision: 1617930 URL: http://svn.apache.org/r1617930 Log: Revert r1617909 since a better solution to the problem has been found.
Modified: subversion/trunk/subversion/include/svn_wc.h subversion/trunk/subversion/libsvn_wc/conflicts.c subversion/trunk/subversion/libsvn_wc/update_editor.c subversion/trunk/subversion/libsvn_wc/util.c subversion/trunk/subversion/svn/util.c Modified: subversion/trunk/subversion/include/svn_wc.h URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/include/svn_wc.h?rev=1617930&r1=1617929&r2=1617930&view=diff ============================================================================== --- subversion/trunk/subversion/include/svn_wc.h (original) +++ subversion/trunk/subversion/include/svn_wc.h Thu Aug 14 13:08:06 2014 @@ -1711,12 +1711,11 @@ typedef struct svn_wc_conflict_version_t * @a revision and the @c node_kind to @a kind. Make only shallow * copies of the pointer arguments. * - * @a repos_root_url, and @a revision must be valid, non-null values. - * @a repos_relpath must be a canonical fspath, but can be @c NULL if kind - * is @svn_node_none. @a repos_uuid should be a valid UUID, but can be + * @a repos_root_url, @a repos_relpath and @a revision must be valid, + * non-null values. @a repos_uuid should be a valid UUID, but can be * NULL if unknown. @a kind can be any kind, even 'none' or 'unknown'. * - * @since New in 1.8. As of 1.9 @a repos_relpath may be NULL if kind is 'none'. + * @since New in 1.8. */ svn_wc_conflict_version_t * svn_wc_conflict_version_create2(const char *repos_root_url, Modified: subversion/trunk/subversion/libsvn_wc/conflicts.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/conflicts.c?rev=1617930&r1=1617929&r2=1617930&view=diff ============================================================================== --- subversion/trunk/subversion/libsvn_wc/conflicts.c (original) +++ subversion/trunk/subversion/libsvn_wc/conflicts.c Thu Aug 14 13:08:06 2014 @@ -117,11 +117,8 @@ conflict__prepend_location(svn_skel_t *s svn_skel__prepend_int(location->peg_rev, loc, result_pool); - if (!location->path_in_repos) /* can be NULL if non-existent */ - svn_skel__prepend(svn_skel__make_empty_list(result_pool), loc); - else - svn_skel__prepend_str(apr_pstrdup(result_pool, location->path_in_repos), loc, - result_pool); + svn_skel__prepend_str(apr_pstrdup(result_pool, location->path_in_repos), loc, + result_pool); if (!location->repos_uuid) /* Can theoretically be NULL */ svn_skel__prepend(svn_skel__make_empty_list(result_pool), loc); @@ -171,10 +168,7 @@ conflict__read_location(svn_wc_conflict_ repos_uuid = NULL; c = c->next; - if (c->is_atom) - repos_relpath = apr_pstrmemdup(result_pool, c->data, c->len); - else - repos_relpath = NULL; + repos_relpath = apr_pstrmemdup(result_pool, c->data, c->len); c = c->next; SVN_ERR(svn_skel__parse_int(&v, c, scratch_pool)); Modified: subversion/trunk/subversion/libsvn_wc/update_editor.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/update_editor.c?rev=1617930&r1=1617929&r2=1617930&view=diff ============================================================================== --- subversion/trunk/subversion/libsvn_wc/update_editor.c (original) +++ subversion/trunk/subversion/libsvn_wc/update_editor.c Thu Aug 14 13:08:06 2014 @@ -840,9 +840,7 @@ complete_conflict(svn_skel_t *conflict, if (is_complete) return SVN_NO_ERROR; /* Already completed */ - if (old_repos_relpath == NULL) - local_kind = svn_node_none; - if (SVN_IS_VALID_REVNUM(old_revision)) + if (old_repos_relpath) original_version = svn_wc_conflict_version_create2(eb->repos_root, eb->repos_uuid, old_repos_relpath, @@ -852,14 +850,15 @@ complete_conflict(svn_skel_t *conflict, else original_version = NULL; - if (new_repos_relpath == NULL) - target_kind = svn_node_none; - target_version = svn_wc_conflict_version_create2(eb->repos_root, - eb->repos_uuid, - new_repos_relpath, - *eb->target_revision, - target_kind, - result_pool); + if (new_repos_relpath) + target_version = svn_wc_conflict_version_create2(eb->repos_root, + eb->repos_uuid, + new_repos_relpath, + *eb->target_revision, + target_kind, + result_pool); + else + target_version = NULL; if (eb->switch_repos_relpath) SVN_ERR(svn_wc__conflict_skel_set_op_switch(conflict, Modified: subversion/trunk/subversion/libsvn_wc/util.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/util.c?rev=1617930&r1=1617929&r2=1617930&view=diff ============================================================================== --- subversion/trunk/subversion/libsvn_wc/util.c (original) +++ subversion/trunk/subversion/libsvn_wc/util.c Thu Aug 14 13:08:06 2014 @@ -296,14 +296,10 @@ svn_wc_conflict_version_create2(const ch version = apr_pcalloc(result_pool, sizeof(*version)); - if (repos_relpath) - SVN_ERR_ASSERT_NO_RETURN(svn_relpath_is_canonical(repos_relpath)); - else - SVN_ERR_ASSERT_NO_RETURN(kind == svn_node_none); - - SVN_ERR_ASSERT_NO_RETURN(svn_uri_is_canonical(repos_url, result_pool) - && SVN_IS_VALID_REVNUM(revision) - /* ### repos_uuid can be NULL :( */); + SVN_ERR_ASSERT_NO_RETURN(svn_uri_is_canonical(repos_url, result_pool) + && svn_relpath_is_canonical(repos_relpath) + && SVN_IS_VALID_REVNUM(revision) + /* ### repos_uuid can be NULL :( */); version->repos_url = repos_url; version->peg_rev = revision; Modified: subversion/trunk/subversion/svn/util.c URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/svn/util.c?rev=1617930&r1=1617929&r2=1617930&view=diff ============================================================================== --- subversion/trunk/subversion/svn/util.c (original) +++ subversion/trunk/subversion/svn/util.c Thu Aug 14 13:08:06 2014 @@ -923,11 +923,6 @@ svn_cl__node_description(const svn_wc_co if (node->path_in_repos) path_str = node->path_in_repos; - else if (node->node_kind == svn_node_none) - { - root_str = ""; - path_str = ""; - } return apr_psprintf(pool, "(%s) %s@%ld", svn_cl__node_kind_str_human_readable(node->node_kind),