You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by iv...@apache.org on 2015/02/14 12:15:09 UTC
svn commit: r1659777 [7/9] - in /subversion/branches/remove-log-addressing:
./ build/generator/ contrib/client-side/svncopy/ notes/
subversion/bindings/javahl/native/
subversion/bindings/javahl/src/org/apache/subversion/javahl/
subversion/bindings/java...
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_subr/x509info.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_subr/x509info.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_subr/x509info.c (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_subr/x509info.c Sat Feb 14 11:15:05 2015
@@ -168,7 +168,7 @@ svn_x509_oid_to_string(const unsigned ch
}
else if (*p < 128)
{
- /* The remaining values if they're less than 128 are just
+ /* The remaining values if they're less than 128 are just
* the number one to one encoded */
temp = apr_psprintf(scratch_pool, ".%d", *p);
p++;
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/conflicts.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/conflicts.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/conflicts.c (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/conflicts.c Sat Feb 14 11:15:05 2015
@@ -1772,6 +1772,7 @@ static svn_error_t *
read_tree_conflict_desc(svn_wc_conflict_description2_t **desc,
svn_wc__db_t *db,
const char *local_abspath,
+ svn_node_kind_t node_kind,
const svn_skel_t *conflict_skel,
svn_wc_operation_t operation,
const svn_wc_conflict_version_t *left_version,
@@ -1792,51 +1793,18 @@ read_tree_conflict_desc(svn_wc_conflict_
else if (reason == svn_wc_conflict_reason_unversioned ||
reason == svn_wc_conflict_reason_obstructed)
SVN_ERR(svn_io_check_path(local_abspath, &local_kind, scratch_pool));
- else if (operation == svn_wc_operation_merge)
+ else if (action == svn_wc_conflict_action_delete
+ && left_version
+ && (operation == svn_wc_operation_update
+ ||operation == svn_wc_operation_switch)
+ && (reason == svn_wc_conflict_reason_deleted
+ || reason == svn_wc_conflict_reason_moved_away))
{
- /* ### If the merge replaced the node, this will read the kind of
- * ### the merge-right node, which is not necessarily the node
- * ### kind of the tree conflict victim.
- * ### This needs the BASE node kind if the node was not replaced
- * ### at the time the merge was run. But if the node was already
- * ### replaced before the merge, it needs the kind of the replacing
- * ### node. Ideally, we'd store the victim node kind in conflict
- * ### storage instead of guessing it here...
- */
- /* Read the tree conflict victim's node kind from the working copy,
- or if it doesn't exist directly from disk. */
- SVN_ERR(svn_wc__db_read_kind(&local_kind, db, local_abspath,
- TRUE /* allow missing */,
- FALSE /* show deleted */,
- FALSE /* show hidden */, scratch_pool));
-
- if (local_kind == svn_node_unknown || local_kind == svn_node_none)
- SVN_ERR(svn_io_check_path(local_abspath, &local_kind, scratch_pool));
- }
- else if (operation == svn_wc_operation_update ||
- operation == svn_wc_operation_switch)
- {
- /* For updates, the left version corresponds to the pre-update state. */
- if (left_version
- && reason != svn_wc_conflict_reason_added
- && reason != svn_wc_conflict_reason_replaced)
- local_kind = left_version->node_kind;
- else
- {
- /* No left version is available, so the conflict was flagged
- * because of a locally added node which was not part of the
- * BASE tree before the update. */
- SVN_ERR(svn_wc__db_read_kind(&local_kind, db, local_abspath,
- TRUE /* allow missing */,
- TRUE /* show deleted */,
- FALSE /* show hidden */, scratch_pool));
- if (local_kind == svn_node_unknown || local_kind == svn_node_none)
- SVN_ERR(svn_io_check_path(local_abspath, &local_kind,
- scratch_pool));
- }
+ /* We have nothing locally to take the kind from */
+ local_kind = left_version->node_kind;
}
else
- SVN_ERR_MALFUNCTION();
+ local_kind = node_kind;
*desc = svn_wc_conflict_description_create_tree2(local_abspath, local_kind,
operation,
@@ -2031,9 +1999,14 @@ svn_wc__conflict_invoke_resolver(svn_wc_
svn_wc_conflict_result_t *result;
svn_wc_conflict_description2_t *desc;
svn_boolean_t resolved;
+ svn_node_kind_t node_kind;
+
+ SVN_ERR(svn_wc__db_read_kind(&node_kind, db, local_abspath, TRUE,
+ TRUE, FALSE, scratch_pool));
SVN_ERR(read_tree_conflict_desc(&desc,
- db, local_abspath, conflict_skel,
+ db, local_abspath, node_kind,
+ conflict_skel,
operation, left_version, right_version,
scratch_pool, scratch_pool));
@@ -2252,8 +2225,10 @@ svn_wc__read_conflicts(const apr_array_h
const apr_array_header_t *locations;
const svn_wc_conflict_version_t *left_version = NULL;
const svn_wc_conflict_version_t *right_version = NULL;
+ svn_node_kind_t node_kind;
- SVN_ERR(svn_wc__db_read_conflict(&conflict_skel, db, local_abspath,
+ SVN_ERR(svn_wc__db_read_conflict(&conflict_skel, &node_kind,
+ db, local_abspath,
scratch_pool, scratch_pool));
if (!conflict_skel)
@@ -2279,9 +2254,6 @@ svn_wc__read_conflicts(const apr_array_h
if (prop_conflicted)
{
- svn_node_kind_t node_kind
- = left_version ? left_version->node_kind : svn_node_unknown;
-
SVN_ERR(read_prop_conflict_descs(cflcts,
db, local_abspath, conflict_skel,
create_tempfiles, node_kind,
@@ -2306,7 +2278,8 @@ svn_wc__read_conflicts(const apr_array_h
svn_wc_conflict_description2_t *desc;
SVN_ERR(read_tree_conflict_desc(&desc,
- db, local_abspath, conflict_skel,
+ db, local_abspath, node_kind,
+ conflict_skel,
operation, left_version, right_version,
result_pool, scratch_pool));
@@ -2359,6 +2332,7 @@ static svn_error_t *
resolve_prop_conflict_on_node(svn_boolean_t *did_resolve,
svn_wc__db_t *db,
const char *local_abspath,
+ const svn_skel_t *conflicts,
const char *conflicted_propname,
svn_wc_conflict_choice_t conflict_choice,
const char *merged_file,
@@ -2374,18 +2348,11 @@ resolve_prop_conflict_on_node(svn_boolea
apr_hash_t *old_props;
apr_hash_t *resolve_from = NULL;
svn_skel_t *work_items = NULL;
- svn_skel_t *conflicts;
svn_wc_operation_t operation;
svn_boolean_t prop_conflicted;
*did_resolve = FALSE;
- SVN_ERR(svn_wc__db_read_conflict(&conflicts, db, local_abspath,
- scratch_pool, scratch_pool));
-
- if (!conflicts)
- return SVN_NO_ERROR;
-
SVN_ERR(svn_wc__conflict_read_info(&operation, NULL, NULL, &prop_conflicted,
NULL, db, local_abspath, conflicts,
scratch_pool, scratch_pool));
@@ -2729,7 +2696,7 @@ svn_wc__mark_resolved_text_conflict(svn_
svn_skel_t *work_items;
svn_skel_t *conflict;
- SVN_ERR(svn_wc__db_read_conflict(&conflict, db, local_abspath,
+ SVN_ERR(svn_wc__db_read_conflict(&conflict, NULL, db, local_abspath,
scratch_pool, scratch_pool));
if (!conflict)
@@ -2756,10 +2723,17 @@ svn_wc__mark_resolved_prop_conflicts(svn
apr_pool_t *scratch_pool)
{
svn_boolean_t ignored_result;
+ svn_skel_t *conflicts;
+
+ SVN_ERR(svn_wc__db_read_conflict(&conflicts, NULL, db, local_abspath,
+ scratch_pool, scratch_pool));
+
+ if (!conflicts)
+ return SVN_NO_ERROR;
return svn_error_trace(resolve_prop_conflict_on_node(
&ignored_result,
- db, local_abspath, "",
+ db, local_abspath, conflicts, "",
svn_wc_conflict_choose_merged, NULL,
NULL, NULL,
scratch_pool));
@@ -2834,7 +2808,7 @@ conflict_status_walker(void *baton,
iterpool = svn_pool_create(scratch_pool);
- SVN_ERR(svn_wc__db_read_conflict(&conflict, db, local_abspath,
+ SVN_ERR(svn_wc__db_read_conflict(&conflict, NULL, db, local_abspath,
scratch_pool, scratch_pool));
SVN_ERR(svn_wc__read_conflicts(&conflicts, db, local_abspath, TRUE,
@@ -2935,6 +2909,7 @@ conflict_status_walker(void *baton,
SVN_ERR(resolve_prop_conflict_on_node(&did_resolve,
db,
local_abspath,
+ conflict,
cd->property_name,
my_choice,
result
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/copy.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/copy.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/copy.c (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/copy.c Sat Feb 14 11:15:05 2015
@@ -258,7 +258,7 @@ copy_versioned_file(svn_wc__db_t *db,
svn_error_t *err;
/* Is there a text conflict at the source path? */
- SVN_ERR(svn_wc__db_read_conflict(&conflict, db, src_abspath,
+ SVN_ERR(svn_wc__db_read_conflict(&conflict, NULL, db, src_abspath,
scratch_pool, scratch_pool));
err = svn_wc__conflict_read_text_conflict(&conflict_working, NULL, NULL,
@@ -945,7 +945,7 @@ remove_node_conflict_markers(svn_wc__db_
{
svn_skel_t *conflict;
- SVN_ERR(svn_wc__db_read_conflict(&conflict, db, src_abspath,
+ SVN_ERR(svn_wc__db_read_conflict(&conflict, NULL, db, src_abspath,
scratch_pool, scratch_pool));
/* Do we have conflict markers that should be removed? */
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/delete.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/delete.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/delete.c (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/delete.c Sat Feb 14 11:15:05 2015
@@ -135,7 +135,7 @@ create_delete_wq_items(svn_skel_t **work
const apr_array_header_t *markers;
int i;
- SVN_ERR(svn_wc__db_read_conflict(&conflict, db, local_abspath,
+ SVN_ERR(svn_wc__db_read_conflict(&conflict, NULL, db, local_abspath,
scratch_pool, scratch_pool));
SVN_ERR(svn_wc__conflict_read_markers(&markers, db, local_abspath,
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/diff.h
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/diff.h?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/diff.h (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/diff.h Sat Feb 14 11:15:05 2015
@@ -39,7 +39,7 @@ extern "C" {
#endif /* __cplusplus */
/* A function to diff locally added and locally copied files.
-
+
Reports the file LOCAL_ABSPATH as ADDED file with relpath RELPATH to
PROCESSOR with as parent baton PROCESSOR_PARENT_BATON.
@@ -60,7 +60,7 @@ svn_wc__diff_local_only_file(svn_wc__db_
apr_pool_t *scratch_pool);
/* A function to diff locally added and locally copied directories.
-
+
Reports the directory LOCAL_ABSPATH and everything below it (limited by
DEPTH) as added with relpath RELPATH to PROCESSOR with as parent baton
PROCESSOR_PARENT_BATON.
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/entries.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/entries.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/entries.c (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/entries.c Sat Feb 14 11:15:05 2015
@@ -881,7 +881,7 @@ read_one_entry(const svn_wc_entry_t **ne
svn_skel_t *conflict;
svn_boolean_t text_conflicted;
svn_boolean_t prop_conflicted;
- SVN_ERR(svn_wc__db_read_conflict(&conflict, db, entry_abspath,
+ SVN_ERR(svn_wc__db_read_conflict(&conflict, NULL, db, entry_abspath,
scratch_pool, scratch_pool));
SVN_ERR(svn_wc__conflict_read_info(NULL, NULL, &text_conflicted,
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/externals.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/externals.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/externals.c (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/externals.c Sat Feb 14 11:15:05 2015
@@ -68,6 +68,7 @@
* the revision if the revision is found. Set REV_IDX to the index in
* LINE_PARTS where the revision specification starts. Remove from
* LINE_PARTS the element(s) that specify the revision.
+ * Set REV_STR to the element that specifies the revision.
* PARENT_DIRECTORY_DISPLAY and LINE are given to return a nice error
* string.
*
@@ -76,6 +77,7 @@
*/
static svn_error_t *
find_and_remove_externals_revision(int *rev_idx,
+ const char **rev_str,
const char **line_parts,
int num_line_parts,
svn_wc_external_item2_t *item,
@@ -137,6 +139,8 @@ find_and_remove_externals_revision(int *
line_parts[j] = line_parts[j+shift_count];
line_parts[num_line_parts-shift_count] = NULL;
+ *rev_str = apr_psprintf(pool, "-r%s", digits_ptr);
+
/* Found the revision, so leave the function immediately, do
* not continue looking for additional revisions. */
return SVN_NO_ERROR;
@@ -158,7 +162,8 @@ find_and_remove_externals_revision(int *
}
svn_error_t *
-svn_wc_parse_externals_description3(apr_array_header_t **externals_p,
+svn_wc__parse_externals_description(apr_array_header_t **externals_p,
+ apr_array_header_t **parser_infos_p,
const char *defining_directory,
const char *desc,
svn_boolean_t canonicalize_url,
@@ -166,6 +171,7 @@ svn_wc_parse_externals_description3(apr_
{
int i;
apr_array_header_t *externals = NULL;
+ apr_array_header_t *parser_infos = NULL;
apr_array_header_t *lines = svn_cstring_split(desc, "\n\r", TRUE, pool);
const char *defining_directory_display = svn_path_is_url(defining_directory) ?
defining_directory : svn_dirent_local_style(defining_directory, pool);
@@ -175,6 +181,10 @@ svn_wc_parse_externals_description3(apr_
if (externals_p)
externals = apr_array_make(pool, 1, sizeof(svn_wc_external_item2_t *));
+ if (parser_infos_p)
+ parser_infos =
+ apr_array_make(pool, 1, sizeof(svn_wc__externals_parser_info_t *));
+
for (i = 0; i < lines->nelts; i++)
{
const char *line = APR_ARRAY_IDX(lines, i, const char *);
@@ -186,10 +196,12 @@ svn_wc_parse_externals_description3(apr_
const char *token1;
svn_boolean_t token0_is_url;
svn_boolean_t token1_is_url;
+ svn_wc__externals_parser_info_t *info = NULL;
/* Index into line_parts where the revision specification
started. */
int rev_idx = -1;
+ const char *rev_str = NULL;
if ((! line) || (line[0] == '#'))
continue;
@@ -209,6 +221,9 @@ svn_wc_parse_externals_description3(apr_
item->revision.kind = svn_opt_revision_unspecified;
item->peg_revision.kind = svn_opt_revision_unspecified;
+ if (parser_infos)
+ info = apr_pcalloc(pool, sizeof(*info));
+
/*
* There are six different formats of externals:
*
@@ -240,6 +255,7 @@ svn_wc_parse_externals_description3(apr_
set item->revision to the parsed revision. */
/* ### ugh. stupid cast. */
SVN_ERR(find_and_remove_externals_revision(&rev_idx,
+ &rev_str,
(const char **)line_parts,
num_line_parts, item,
defining_directory_display,
@@ -290,12 +306,34 @@ svn_wc_parse_externals_description3(apr_
SVN_ERR(svn_opt_parse_path(&item->peg_revision, &item->url,
token0, pool));
item->target_dir = token1;
+
+ if (info)
+ {
+ info->format = svn_wc__external_description_format_2;
+
+ if (rev_str)
+ info->rev_str = apr_pstrdup(pool, rev_str);
+
+ if (item->peg_revision.kind != svn_opt_revision_unspecified)
+ info->peg_rev_str = strrchr(token0, '@');
+ }
}
else
{
item->target_dir = token0;
item->url = token1;
item->peg_revision = item->revision;
+
+ if (info)
+ {
+ info->format = svn_wc__external_description_format_1;
+
+ if (rev_str)
+ {
+ info->rev_str = apr_pstrdup(pool, rev_str);
+ info->peg_rev_str = info->rev_str;
+ }
+ }
}
SVN_ERR(svn_opt_resolve_revisions(&item->peg_revision,
@@ -333,15 +371,34 @@ svn_wc_parse_externals_description3(apr_
if (externals)
APR_ARRAY_PUSH(externals, svn_wc_external_item2_t *) = item;
+ if (parser_infos)
+ APR_ARRAY_PUSH(parser_infos, svn_wc__externals_parser_info_t *) = info;
}
if (externals_p)
*externals_p = externals;
+ if (parser_infos_p)
+ *parser_infos_p = parser_infos;
return SVN_NO_ERROR;
}
svn_error_t *
+svn_wc_parse_externals_description3(apr_array_header_t **externals_p,
+ const char *defining_directory,
+ const char *desc,
+ svn_boolean_t canonicalize_url,
+ apr_pool_t *pool)
+{
+ return svn_error_trace(svn_wc__parse_externals_description(externals_p,
+ NULL,
+ defining_directory,
+ desc,
+ canonicalize_url,
+ pool));
+}
+
+svn_error_t *
svn_wc__externals_find_target_dups(apr_array_header_t **duplicate_targets,
apr_array_header_t *externals,
apr_pool_t *pool,
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/props.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/props.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/props.c (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/props.c Sat Feb 14 11:15:05 2015
@@ -541,7 +541,7 @@ prop_conflict_new(const svn_string_t **c
/* How we render the conflict:
- We have four sides: original, mine, incoming_base, incoming.
+ We have four sides: original, mine, incoming_base, incoming.
We render the conflict as a 3-way diff. A diff3 API has three parts,
called:
@@ -750,7 +750,7 @@ svn_wc__create_prejfile(const char **tmp
apr_hash_t *conflicted_props;
svn_skel_t *conflicts;
- SVN_ERR(svn_wc__db_read_conflict(&conflicts, db, local_abspath,
+ SVN_ERR(svn_wc__db_read_conflict(&conflicts, NULL, db, local_abspath,
scratch_pool, scratch_pool));
SVN_ERR(svn_wc__conflict_read_info(&operation, NULL, NULL, NULL, NULL,
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/questions.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/questions.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/questions.c (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/questions.c Sat Feb 14 11:15:05 2015
@@ -369,7 +369,7 @@ internal_conflicted_p(svn_boolean_t *tex
svn_boolean_t resolved_text = FALSE;
svn_boolean_t resolved_props = FALSE;
- SVN_ERR(svn_wc__db_read_conflict(&conflicts, db, local_abspath,
+ SVN_ERR(svn_wc__db_read_conflict(&conflicts, NULL, db, local_abspath,
scratch_pool, scratch_pool));
if (!conflicts)
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/update_editor.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/update_editor.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/update_editor.c (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/update_editor.c Sat Feb 14 11:15:05 2015
@@ -825,10 +825,11 @@ complete_conflict(svn_skel_t *conflict,
const char *new_repos_relpath,
svn_node_kind_t local_kind,
svn_node_kind_t target_kind,
+ const svn_skel_t *delete_conflict,
apr_pool_t *result_pool,
apr_pool_t *scratch_pool)
{
- svn_wc_conflict_version_t *original_version;
+ const svn_wc_conflict_version_t *original_version = NULL;
svn_wc_conflict_version_t *target_version;
svn_boolean_t is_complete;
@@ -849,8 +850,21 @@ complete_conflict(svn_skel_t *conflict,
old_revision,
local_kind,
result_pool);
- else
- original_version = NULL;
+ else if (delete_conflict)
+ {
+ const apr_array_header_t *locations;
+
+ SVN_ERR(svn_wc__conflict_read_info(NULL, &locations, NULL, NULL, NULL,
+ eb->db, local_abspath,
+ delete_conflict,
+ scratch_pool, scratch_pool));
+
+ if (locations)
+ {
+ original_version = APR_ARRAY_IDX(locations, 0,
+ const svn_wc_conflict_version_t *);
+ }
+ }
target_version = svn_wc_conflict_version_create2(eb->repos_root,
eb->repos_uuid,
@@ -896,6 +910,7 @@ mark_directory_edited(struct dir_baton *
db->old_repos_relpath, db->old_revision,
db->new_repos_relpath,
svn_node_dir, svn_node_dir,
+ NULL,
db->pool, scratch_pool));
SVN_ERR(svn_wc__db_op_mark_conflict(db->edit_baton->db,
db->local_abspath,
@@ -930,6 +945,7 @@ mark_file_edited(struct file_baton *fb,
fb->local_abspath, fb->old_repos_relpath,
fb->old_revision, fb->new_repos_relpath,
svn_node_file, svn_node_file,
+ NULL,
fb->pool, scratch_pool));
SVN_ERR(svn_wc__db_op_mark_conflict(fb->edit_baton->db,
@@ -1249,7 +1265,7 @@ open_root(void *edit_baton,
db->old_revision,
db->new_repos_relpath,
svn_node_dir, svn_node_dir,
- pool, pool));
+ NULL, pool, pool));
SVN_ERR(svn_wc__db_op_mark_conflict(eb->db,
move_src_root_abspath,
tree_conflict,
@@ -1878,10 +1894,7 @@ delete_entry(const char *path,
scratch_pool));
SVN_ERR(complete_conflict(tree_conflict, eb, local_abspath, repos_relpath,
old_revision, deleted_repos_relpath,
- (kind == svn_node_dir)
- ? svn_node_dir
- : svn_node_file,
- svn_node_none,
+ kind, svn_node_none, NULL,
pb->pool, scratch_pool));
/* Issue a wq operation to delete the BASE_NODE data and to delete actual
@@ -1934,23 +1947,17 @@ delete_entry(const char *path,
eb->cancel_func,
eb->cancel_baton,
scratch_pool));
- do_notification(eb, local_abspath, svn_node_unknown,
+ do_notification(eb, local_abspath, kind,
svn_wc_notify_tree_conflict, scratch_pool);
}
else
{
svn_wc_notify_action_t action = svn_wc_notify_update_delete;
- svn_node_kind_t node_kind;
if (pb->shadowed || pb->edit_obstructed)
action = svn_wc_notify_update_shadowed_delete;
- if (kind == svn_node_dir)
- node_kind = svn_node_dir;
- else
- node_kind = svn_node_file;
-
- do_notification(eb, local_abspath, node_kind, action, scratch_pool);
+ do_notification(eb, local_abspath, kind, action, scratch_pool);
}
svn_pool_destroy(scratch_pool);
@@ -2117,7 +2124,7 @@ add_directory(const char *path,
replacement. Let's install a better tree conflict. */
SVN_ERR(svn_wc__conflict_read_tree_conflict(&reason, NULL,
- &move_src_op_root_abspath,
+ &move_src_op_root_abspath,
eb->db,
db->local_abspath,
tree_conflict,
@@ -2264,8 +2271,11 @@ add_directory(const char *path,
SVN_ERR(complete_conflict(tree_conflict, eb, db->local_abspath,
db->old_repos_relpath, db->old_revision,
db->new_repos_relpath,
- wc_kind,
- svn_node_dir,
+ wc_kind, svn_node_dir,
+ pb->deletion_conflicts
+ ? svn_hash_gets(pb->deletion_conflicts,
+ db->name)
+ : NULL,
db->pool, scratch_pool));
SVN_ERR(svn_wc__db_base_add_incomplete_directory(
@@ -2858,6 +2868,11 @@ close_directory(void *dir_baton,
db->old_revision,
db->new_repos_relpath,
svn_node_dir, svn_node_dir,
+ db->parent_baton->deletion_conflicts
+ ? svn_hash_gets(
+ db->parent_baton->deletion_conflicts,
+ db->name)
+ : NULL,
db->pool, scratch_pool));
SVN_ERR(svn_wc__conflict_create_markers(&work_item,
@@ -3081,9 +3096,8 @@ absent_node(const char *path,
if (tree_conflict)
SVN_ERR(complete_conflict(tree_conflict, eb, local_abspath,
NULL, SVN_INVALID_REVNUM, repos_relpath,
- kind, svn_node_unknown,
+ kind, svn_node_unknown, NULL,
scratch_pool, scratch_pool));
-
/* Insert an excluded node below the parent node to note that this child
is absent. (This puts it in the parent db if the child is obstructed) */
@@ -3282,7 +3296,7 @@ add_file(const char *path,
replacement. Let's install a better tree conflict. */
SVN_ERR(svn_wc__conflict_read_tree_conflict(&reason, NULL,
- &move_src_op_root_abspath,
+ &move_src_op_root_abspath,
eb->db,
fb->local_abspath,
tree_conflict,
@@ -3445,8 +3459,11 @@ add_file(const char *path,
fb->old_repos_relpath,
fb->old_revision,
fb->new_repos_relpath,
- wc_kind,
- svn_node_file,
+ wc_kind, svn_node_file,
+ pb->deletion_conflicts
+ ? svn_hash_gets(pb->deletion_conflicts,
+ fb->name)
+ : NULL,
fb->pool, scratch_pool));
SVN_ERR(svn_wc__db_op_mark_conflict(eb->db,
@@ -3851,7 +3868,7 @@ change_file_prop(void *file_baton,
fb->local_abspath, fb->old_repos_relpath,
fb->old_revision, fb->new_repos_relpath,
svn_node_file, svn_node_file,
- fb->pool, scratch_pool));
+ NULL, fb->pool, scratch_pool));
/* Create a copy of the existing (pre update) BASE node in WORKING,
mark a tree conflict and handle the rest of the update as
@@ -4564,6 +4581,11 @@ close_file(void *file_baton,
fb->old_revision,
fb->new_repos_relpath,
svn_node_file, svn_node_file,
+ fb->dir_baton->deletion_conflicts
+ ? svn_hash_gets(
+ fb->dir_baton->deletion_conflicts,
+ fb->name)
+ : NULL,
fb->pool, scratch_pool));
SVN_ERR(svn_wc__conflict_create_markers(&work_item,
@@ -4734,7 +4756,7 @@ update_keywords_after_switch_cb(void *ba
install_from = NULL;
record_fileinfo = TRUE;
}
-
+
SVN_ERR(svn_wc__wq_build_file_install(&work_items, eb->db, local_abspath,
install_from,
eb->use_commit_times,
@@ -4858,7 +4880,7 @@ close_edit(void *edit_baton,
if (eb->switch_repos_relpath)
{
svn_depth_t depth;
-
+
if (eb->requested_depth > svn_depth_empty)
depth = eb->requested_depth;
else
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc-metadata.sql
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc-metadata.sql?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc-metadata.sql (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc-metadata.sql Sat Feb 14 11:15:05 2015
@@ -108,7 +108,7 @@ CREATE TABLE PRISTINE (
);
CREATE INDEX I_PRISTINE_MD5 ON PRISTINE (md5_checksum);
-
+
/* ------------------------------------------------------------------------- */
/* The ACTUAL_NODE table describes text changes and property changes
@@ -150,7 +150,7 @@ CREATE TABLE ACTUAL_NODE (
/* if not NULL, this node is part of a changelist. */
changelist TEXT,
-
+
/* ### need to determine values. "unknown" (no info), "admin" (they
### used something like 'svn edit'), "noticed" (saw a mod while
### scanning the filesystem). */
@@ -170,7 +170,7 @@ CREATE TABLE ACTUAL_NODE (
/* stsp: This is meant for text conflicts, right? What about property
conflicts? Why do we need these in a column to refer to the
pristine store? Can't we just parse the checksums from
- conflict_data as well?
+ conflict_data as well?
rhuijben: Because that won't allow triggers to handle refcounts.
We would have to scan all conflict skels before cleaning up the
a single file from the pristine stor */
@@ -200,7 +200,7 @@ CREATE TABLE LOCK (
lock_owner TEXT,
lock_comment TEXT,
lock_date INTEGER, /* an APR date/time (usec since 1970) */
-
+
PRIMARY KEY (repos_id, repos_relpath)
);
@@ -553,7 +553,7 @@ CREATE TABLE EXTERNALS (
/* the kind of the external. */
kind TEXT NOT NULL,
- /* The local relpath of the directory NODE defining this external
+ /* The local relpath of the directory NODE defining this external
(Defaults to the parent directory of the file external after upgrade) */
def_local_relpath TEXT NOT NULL,
@@ -774,7 +774,7 @@ LIMIT 1
/* ------------------------------------------------------------------------- */
-/* Format 28 involves no schema changes, it only converts MD5 pristine
+/* Format 28 involves no schema changes, it only converts MD5 pristine
references to SHA1. */
-- STMT_UPGRADE_TO_28
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc-queries.sql
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc-queries.sql?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc-queries.sql (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc-queries.sql Sat Feb 14 11:15:05 2015
@@ -253,7 +253,7 @@ WHERE wc_id = ?1 AND IS_STRICT_DESCENDAN
-- STMT_DELETE_WORKING_OP_DEPTH
DELETE FROM nodes
-WHERE wc_id = ?1
+WHERE wc_id = ?1
AND (local_relpath = ?2 OR IS_STRICT_DESCENDANT_OF(local_relpath, ?2))
AND op_depth = ?3
@@ -262,15 +262,12 @@ The op_root must exist (or there is no l
always has presence 'normal' */
-- STMT_SELECT_LAYER_FOR_REPLACE
SELECT s.local_relpath, s.kind,
- RELPATH_SKIP_JOIN(?2, ?4, s.local_relpath) drp, 'normal', 0
+ RELPATH_SKIP_JOIN(?2, ?4, s.local_relpath) drp, 'normal'
FROM nodes s
WHERE s.wc_id = ?1 AND s.local_relpath = ?2 AND s.op_depth = ?3
UNION ALL
SELECT s.local_relpath, s.kind,
- RELPATH_SKIP_JOIN(?2, ?4, s.local_relpath) drp, d.presence,
- EXISTS(SELECT * FROM nodes sh
- WHERE sh.wc_id = ?1 AND sh.op_depth > ?5
- AND sh.local_relpath = d.local_relpath) shadowed
+ RELPATH_SKIP_JOIN(?2, ?4, s.local_relpath) drp, d.presence
FROM nodes s
LEFT OUTER JOIN nodes d ON d.wc_id= ?1 AND d.op_depth = ?5
AND d.local_relpath = drp
@@ -295,17 +292,16 @@ INSERT OR REPLACE INTO nodes (
changed_author, checksum, properties, translated_size, last_mod_time,
symlink_target, moved_here, moved_to )
SELECT
- wc_id, ?4 /*local_relpath */, ?5 /*op_depth*/, ?6 /* parent_relpath */,
- repos_id,
- repos_path, revision, presence, depth, kind, changed_revision,
- changed_date, changed_author, checksum, properties, translated_size,
- last_mod_time, symlink_target, 1,
- (SELECT dst.moved_to FROM nodes AS dst
- WHERE dst.wc_id = ?1
- AND dst.local_relpath = ?4
- AND dst.op_depth = ?5)
-FROM nodes
-WHERE wc_id = ?1 AND local_relpath = ?2 AND op_depth = ?3
+ s.wc_id, ?4 /*local_relpath */, ?5 /*op_depth*/, ?6 /* parent_relpath */,
+ s.repos_id,
+ s.repos_path, s.revision, s.presence, s.depth, s.kind, s.changed_revision,
+ s.changed_date, s.changed_author, s.checksum, s.properties,
+ CASE WHEN d.checksum=s.checksum THEN d.translated_size END,
+ CASE WHEN d.checksum=s.checksum THEN d.last_mod_time END,
+ s.symlink_target, 1, d.moved_to
+FROM nodes s
+LEFT JOIN nodes d ON d.wc_id=?1 AND d.local_relpath=?4 AND d.op_depth=?5
+WHERE s.wc_id = ?1 AND s.local_relpath = ?2 AND s.op_depth = ?3
-- STMT_SELECT_NO_LONGER_MOVED_RV
SELECT d.local_relpath, RELPATH_SKIP_JOIN(?2, ?4, d.local_relpath) srp,
@@ -327,7 +323,7 @@ ORDER BY d.local_relpath DESC
-- STMT_SELECT_OP_DEPTH_CHILDREN
SELECT local_relpath, kind FROM nodes
-WHERE wc_id = ?1
+WHERE wc_id = ?1
AND parent_relpath = ?2
AND op_depth = ?3
AND presence != MAP_BASE_DELETED
@@ -336,7 +332,7 @@ ORDER BY local_relpath
-- STMT_SELECT_OP_DEPTH_CHILDREN_EXISTS
SELECT local_relpath, kind FROM nodes
-WHERE wc_id = ?1
+WHERE wc_id = ?1
AND parent_relpath = ?2
AND op_depth = ?3
AND presence IN (MAP_NORMAL, MAP_INCOMPLETE)
@@ -470,7 +466,7 @@ SELECT (SELECT b.presence FROM nodes AS
WHERE b.wc_id = ?1 AND b.local_relpath = ?2 AND b.op_depth = 0),
work.presence, work.op_depth, moved.moved_to
FROM nodes_current AS work
-LEFT OUTER JOIN nodes AS moved
+LEFT OUTER JOIN nodes AS moved
ON moved.wc_id = work.wc_id
AND moved.local_relpath = work.local_relpath
AND moved.moved_to IS NOT NULL
@@ -547,7 +543,7 @@ UPDATE nodes SET repos_id = ?4, dav_cach
WHERE (wc_id = ?1 AND local_relpath = ?2 AND repos_id = ?3)
OR (wc_id = ?1 AND IS_STRICT_DESCENDANT_OF(local_relpath, ?2)
AND repos_id = ?3)
-
+
-- STMT_UPDATE_LOCK_REPOS_ID
UPDATE lock SET repos_id = ?2
@@ -804,7 +800,7 @@ WHERE wc_id = ?1
OR IS_STRICT_DESCENDANT_OF(local_relpath, ?2))
AND (changelist IS NULL
OR NOT EXISTS (SELECT 1 FROM nodes_current c
- WHERE c.wc_id = ?1
+ WHERE c.wc_id = ?1
AND c.local_relpath = actual_node.local_relpath
AND c.kind = MAP_FILE))
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc.h
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc.h?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc.h (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc.h Sat Feb 14 11:15:05 2015
@@ -158,7 +158,7 @@ extern "C" {
* Bumped in r1395109.
*
* == 1.8.x shipped with format 31
- *
+ *
* Please document any further format changes here.
*/
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db.c (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db.c Sat Feb 14 11:15:05 2015
@@ -611,8 +611,7 @@ blank_ibb(insert_base_baton_t *pibb)
was recorded, otherwise to FALSE.
*/
static svn_error_t *
-db_extend_parent_delete(svn_boolean_t *added_delete,
- svn_wc__db_wcroot_t *wcroot,
+db_extend_parent_delete(svn_wc__db_wcroot_t *wcroot,
const char *local_relpath,
svn_node_kind_t kind,
int op_depth,
@@ -625,9 +624,6 @@ db_extend_parent_delete(svn_boolean_t *a
SVN_ERR_ASSERT(local_relpath[0]);
- if (added_delete)
- *added_delete = FALSE;
-
SVN_ERR(svn_sqlite__get_statement(&stmt, wcroot->sdb,
STMT_SELECT_LOWEST_WORKING_NODE));
SVN_ERR(svn_sqlite__bindf(stmt, "isd", wcroot->wc_id, parent_relpath,
@@ -654,9 +650,6 @@ db_extend_parent_delete(svn_boolean_t *a
local_relpath, parent_op_depth,
parent_relpath, kind_map, kind));
SVN_ERR(svn_sqlite__update(NULL, stmt));
-
- if (added_delete)
- *added_delete = TRUE;
}
}
@@ -881,8 +874,7 @@ insert_base_node(const insert_base_baton
|| (pibb->status == svn_wc__db_status_incomplete))
&& ! pibb->file_external)
{
- SVN_ERR(db_extend_parent_delete(NULL,
- wcroot, local_relpath,
+ SVN_ERR(db_extend_parent_delete(wcroot, local_relpath,
pibb->kind, 0,
scratch_pool));
}
@@ -4878,15 +4870,12 @@ svn_wc__db_op_copy_layer_internal(svn_wc
{
const char *src_relpath;
const char *dst_relpath;
- svn_boolean_t exists;
svn_pool_clear(iterpool);
src_relpath = svn_sqlite__column_text(stmt, 0, iterpool);
dst_relpath = svn_sqlite__column_text(stmt, 2, iterpool);
- exists = !svn_sqlite__column_is_null(stmt, 3);
-
err = svn_sqlite__bindf(stmt2, "isdsds", wcroot->wc_id,
src_relpath, src_op_depth,
dst_relpath, dst_op_depth,
@@ -4899,21 +4888,11 @@ svn_wc__db_op_copy_layer_internal(svn_wc
if (err)
break;
- if (strlen(dst_relpath) > strlen(dst_op_relpath))
+ /* The node can't be deleted where it is added, so extension of
+ an existing shadowing is only interesting 2 levels deep. */
+ if (relpath_depth(dst_relpath) > (dst_op_depth+1))
{
- svn_boolean_t added_delete = FALSE;
- svn_node_kind_t kind = svn_sqlite__column_token(stmt, 1, kind_map);
-
- /* The op root can't be shadowed, so extension of a parent delete
- is only needed when the parent can be deleted */
- if (relpath_depth(dst_relpath) > (dst_op_depth+1))
- {
- err = db_extend_parent_delete(&added_delete, wcroot, dst_relpath,
- kind, dst_op_depth, iterpool);
-
- if (err)
- break;
- }
+ svn_boolean_t exists = !svn_sqlite__column_is_null(stmt, 3);
if (exists)
{
@@ -4921,28 +4900,19 @@ svn_wc__db_op_copy_layer_internal(svn_wc
presence = svn_sqlite__column_token(stmt, 3, presence_map);
- if (presence == svn_wc__db_status_not_present)
+ if (presence != svn_wc__db_status_normal)
exists = FALSE;
}
- /* ### Fails in a few tests... Needs further research */
- /*SVN_ERR_ASSERT(!(exists && added_delete));*/
-
if (!exists)
{
- svn_boolean_t shadowed;
+ svn_node_kind_t kind = svn_sqlite__column_token(stmt, 1, kind_map);
- shadowed = svn_sqlite__column_int(stmt, 4);
+ err = db_extend_parent_delete(wcroot, dst_relpath,
+ kind, dst_op_depth, iterpool);
- /*if (!shadowed && !added_delete)
- {
- err = svn_error_createf(
- SVN_ERR_WC_PATH_UNEXPECTED_STATUS, NULL,
- _("Node '%s' was unexpectedly added unshadowed"),
- path_for_error_message(wcroot, dst_relpath,
- iterpool));
- break;
- }*/
+ if (err)
+ break;
}
}
@@ -5010,7 +4980,7 @@ svn_wc__db_op_copy_layer_internal(svn_wc
SVN_ERR(svn_error_compose_create(err, svn_sqlite__reset(stmt)));
/* ### TODO: Did we handle ACTUAL as intended? */
-
+
SVN_ERR(add_work_items(wcroot->sdb, work_items, scratch_pool));
if (conflict)
@@ -6796,7 +6766,7 @@ op_revert_txn(void *baton,
}
else
{
- SVN_ERR(svn_wc__db_read_conflict_internal(&conflict, wcroot,
+ SVN_ERR(svn_wc__db_read_conflict_internal(&conflict, NULL, wcroot,
local_relpath,
scratch_pool, scratch_pool));
}
@@ -7024,7 +6994,7 @@ op_revert_recursive_txn(void *baton,
STMT_DELETE_ACTUAL_NODE_LEAVING_CHANGELIST_RECURSIVE));
SVN_ERR(svn_sqlite__bindf(stmt, "is", wcroot->wc_id, local_relpath));
SVN_ERR(svn_sqlite__step_done(stmt));
-
+
SVN_ERR(svn_sqlite__get_statement(
&stmt, wcroot->sdb,
STMT_CLEAR_ACTUAL_NODE_LEAVING_CHANGELIST_RECURSIVE));
@@ -13889,6 +13859,7 @@ svn_wc__db_get_conflict_marker_files(apr
svn_error_t *
svn_wc__db_read_conflict(svn_skel_t **conflict,
+ svn_node_kind_t *kind,
svn_wc__db_t *db,
const char *local_abspath,
apr_pool_t *result_pool,
@@ -13902,14 +13873,15 @@ svn_wc__db_read_conflict(svn_skel_t **co
local_abspath, scratch_pool, scratch_pool));
VERIFY_USABLE_WCROOT(wcroot);
- return svn_error_trace(svn_wc__db_read_conflict_internal(conflict, wcroot,
- local_relpath,
+ return svn_error_trace(svn_wc__db_read_conflict_internal(conflict, kind,
+ wcroot, local_relpath,
result_pool,
scratch_pool));
}
svn_error_t *
svn_wc__db_read_conflict_internal(svn_skel_t **conflict,
+ svn_node_kind_t *kind,
svn_wc__db_wcroot_t *wcroot,
const char *local_relpath,
apr_pool_t *result_pool,
@@ -13918,6 +13890,9 @@ svn_wc__db_read_conflict_internal(svn_sk
svn_sqlite__stmt_t *stmt;
svn_boolean_t have_row;
+ if (kind)
+ *kind = svn_node_none;
+
/* Check if we have a conflict in ACTUAL */
SVN_ERR(svn_sqlite__get_statement(&stmt, wcroot->sdb,
STMT_SELECT_ACTUAL_NODE));
@@ -13925,12 +13900,13 @@ svn_wc__db_read_conflict_internal(svn_sk
SVN_ERR(svn_sqlite__step(&have_row, stmt));
- if (! have_row)
+ if (!have_row || kind)
{
/* Do this while stmt is still open to avoid closing the sqlite
transaction and then reopening. */
svn_sqlite__stmt_t *stmt_node;
svn_error_t *err;
+ svn_boolean_t have_info = FALSE;
err = svn_sqlite__get_statement(&stmt_node, wcroot->sdb,
STMT_SELECT_NODE_INFO);
@@ -13942,25 +13918,47 @@ svn_wc__db_read_conflict_internal(svn_sk
local_relpath);
if (!err)
- err = svn_sqlite__step(&have_row, stmt_node);
+ err = svn_sqlite__step(&have_info, stmt_node);
+
+ if (!err && kind && have_info)
+ {
+ svn_wc__db_status_t status;
+ int op_depth = svn_sqlite__column_int(stmt_node, 0);
+
+ status = svn_sqlite__column_token(stmt_node, 3, presence_map);
+
+ if (op_depth > 0)
+ err = convert_to_working_status(&status, status);
+
+ if (!err && (status == svn_wc__db_status_normal
+ || status == svn_wc__db_status_added
+ || status == svn_wc__db_status_deleted
+ || status == svn_wc__db_status_incomplete))
+ {
+ *kind = svn_sqlite__column_token(stmt_node, 4, kind_map);
+ }
+ }
if (stmt_node)
err = svn_error_compose_create(err,
svn_sqlite__reset(stmt_node));
- SVN_ERR(svn_error_compose_create(err, svn_sqlite__reset(stmt)));
-
- if (have_row)
+ if (!have_row || err)
{
- *conflict = NULL;
- return SVN_NO_ERROR;
- }
+ SVN_ERR(svn_error_compose_create(err, svn_sqlite__reset(stmt)));
- return svn_error_createf(SVN_ERR_WC_PATH_NOT_FOUND, NULL,
- _("The node '%s' was not found."),
+ if (have_info)
+ {
+ *conflict = NULL;
+ return SVN_NO_ERROR;
+ }
+
+ return svn_error_createf(SVN_ERR_WC_PATH_NOT_FOUND, NULL,
+ _("The node '%s' was not found."),
path_for_error_message(wcroot,
local_relpath,
scratch_pool));
+ }
}
{
@@ -16280,7 +16278,7 @@ static int
compare_queue_items(const void *v1,
const void *v2)
{
- const commit_queue_item_t *cqi1
+ const commit_queue_item_t *cqi1
= *(const commit_queue_item_t **)v1;
const commit_queue_item_t *cqi2
= *(const commit_queue_item_t **)v2;
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db.h
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db.h?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db.h (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db.h Sat Feb 14 11:15:05 2015
@@ -2350,7 +2350,8 @@ svn_wc__db_get_conflict_marker_files(apr
apr_pool_t *scratch_pool);
/* Read the conflict information recorded on LOCAL_ABSPATH in *CONFLICT,
- an editable conflict skel.
+ an editable conflict skel. If kind is not NULL, also read the node kind
+ in *KIND. (SHOW_HIDDEN: false, SHOW_DELETED: true)
If the node exists, but does not have a conflict set *CONFLICT to NULL,
otherwise return a SVN_ERR_WC_PATH_NOT_FOUND error.
@@ -2359,6 +2360,7 @@ svn_wc__db_get_conflict_marker_files(apr
SCRATCH_POOL */
svn_error_t *
svn_wc__db_read_conflict(svn_skel_t **conflict,
+ svn_node_kind_t *kind,
svn_wc__db_t *db,
const char *local_abspath,
apr_pool_t *result_pool,
@@ -3485,7 +3487,7 @@ svn_wc__db_resolve_delete_raise_moved_aw
/* Like svn_wc__db_resolve_delete_raise_moved_away this should be
combined.
-
+
### LOCAL_ABSPATH specifies the move origin, but the move origin
### is not necessary unique enough. This function needs an op_root_abspath
### argument to differentiate between different origins.
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db_private.h
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db_private.h?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db_private.h (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db_private.h Sat Feb 14 11:15:05 2015
@@ -328,6 +328,7 @@ svn_wc__db_fetch_repos_info(const char *
DB+LOCAL_ABSPATH, and outputting relpaths instead of abspaths. */
svn_error_t *
svn_wc__db_read_conflict_internal(svn_skel_t **conflict,
+ svn_node_kind_t *kind,
svn_wc__db_wcroot_t *wcroot,
const char *local_relpath,
apr_pool_t *result_pool,
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db_update_move.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db_update_move.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db_update_move.c (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/wc_db_update_move.c Sat Feb 14 11:15:05 2015
@@ -377,7 +377,8 @@ create_tree_conflict(svn_skel_t **confli
child_relpath, scratch_pool);
}
- err = svn_wc__db_read_conflict_internal(&conflict, wcroot, local_relpath,
+ err = svn_wc__db_read_conflict_internal(&conflict, NULL,
+ wcroot, local_relpath,
result_pool, scratch_pool);
if (err && err->apr_err != SVN_ERR_WC_PATH_NOT_FOUND)
return svn_error_trace(err);
@@ -1364,8 +1365,8 @@ get_tc_info(svn_wc_operation_t *operatio
svn_skel_t *conflict_skel;
/* Check for tree conflict on src. */
- SVN_ERR(svn_wc__db_read_conflict(&conflict_skel, db,
- src_abspath,
+ SVN_ERR(svn_wc__db_read_conflict(&conflict_skel, NULL,
+ db, src_abspath,
scratch_pool, scratch_pool));
if (!conflict_skel)
return svn_error_createf(SVN_ERR_WC_CONFLICT_RESOLVER_FAILURE, NULL,
@@ -1941,6 +1942,7 @@ depth_sufficient_to_bump(svn_boolean_t *
static svn_error_t *
bump_mark_tree_conflict(svn_wc__db_wcroot_t *wcroot,
const char *move_src_root_relpath,
+ int src_op_depth,
const char *move_src_op_root_relpath,
const char *move_dst_op_root_relpath,
svn_wc__db_t *db,
@@ -1963,12 +1965,12 @@ bump_mark_tree_conflict(svn_wc__db_wcroo
SVN_ERR(verify_write_lock(wcroot, move_src_root_relpath, scratch_pool));
/* Read new (post-update) information from the new move source BASE node. */
- SVN_ERR(svn_wc__db_base_get_info_internal(NULL, &new_kind, &new_rev,
- &new_repos_relpath, &repos_id,
- NULL, NULL, NULL, NULL, NULL,
- NULL, NULL, NULL, NULL, NULL,
- wcroot, move_src_op_root_relpath,
- scratch_pool, scratch_pool));
+ SVN_ERR(svn_wc__db_depth_get_info(NULL, &new_kind, &new_rev,
+ &new_repos_relpath, &repos_id,
+ NULL, NULL, NULL, NULL, NULL,
+ NULL, NULL, NULL,
+ wcroot, move_src_op_root_relpath,
+ src_op_depth, scratch_pool, scratch_pool));
SVN_ERR(svn_wc__db_fetch_repos_info(&repos_root_url, &repos_uuid,
wcroot, repos_id, scratch_pool));
@@ -2104,6 +2106,7 @@ bump_moved_layer(svn_boolean_t *recurse,
svn_boolean_t have_row;
svn_skel_t *conflict;
svn_boolean_t can_bump;
+ const char *src_root_relpath;
SVN_ERR(verify_write_lock(wcroot, local_relpath, scratch_pool));
@@ -2142,24 +2145,21 @@ bump_moved_layer(svn_boolean_t *recurse,
can_bump = FALSE;
}
- {
- const char *src_root_relpath = src_relpath;
- while (relpath_depth(src_root_relpath) > src_del_depth)
- src_root_relpath = svn_relpath_dirname(src_root_relpath, scratch_pool);
-
- if (!can_bump)
- {
- SVN_ERR(bump_mark_tree_conflict(wcroot, src_relpath,
- src_root_relpath, dst_relpath,
- db, scratch_pool));
+ src_root_relpath = svn_relpath_limit(src_relpath, src_del_depth,
+ scratch_pool);
- return SVN_NO_ERROR;
- }
+ if (!can_bump)
+ {
+ SVN_ERR(bump_mark_tree_conflict(wcroot, src_relpath, op_depth,
+ src_root_relpath, dst_relpath,
+ db, scratch_pool));
- SVN_ERR(svn_wc__db_read_conflict_internal(&conflict, wcroot,
- src_root_relpath,
- scratch_pool, scratch_pool));
- }
+ return SVN_NO_ERROR;
+ }
+
+ SVN_ERR(svn_wc__db_read_conflict_internal(&conflict, NULL, wcroot,
+ src_root_relpath,
+ scratch_pool, scratch_pool));
/* ### TODO: check this is the right sort of tree-conflict? */
if (!conflict)
@@ -2315,7 +2315,7 @@ svn_wc__db_bump_moved_away(svn_wc__db_wc
if (locked)
{
SVN_ERR(bump_mark_tree_conflict(wcroot,
- move_src_root_relpath,
+ move_src_root_relpath, 0,
delete_relpath,
move_dst_op_root_relpath,
db, scratch_pool));
Modified: subversion/branches/remove-log-addressing/subversion/libsvn_wc/workqueue.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/libsvn_wc/workqueue.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/libsvn_wc/workqueue.c (original)
+++ subversion/branches/remove-log-addressing/subversion/libsvn_wc/workqueue.c Sat Feb 14 11:15:05 2015
@@ -1107,7 +1107,7 @@ run_prej_install(work_item_baton_t *wqb,
SVN_ERR(svn_wc__db_from_relpath(&local_abspath, db, wri_abspath,
local_relpath, scratch_pool, scratch_pool));
- SVN_ERR(svn_wc__db_read_conflict(&conflicts, db, local_abspath,
+ SVN_ERR(svn_wc__db_read_conflict(&conflicts, NULL, db, local_abspath,
scratch_pool, scratch_pool));
SVN_ERR(svn_wc__conflict_read_prop_conflict(&prejfile_abspath,
@@ -1287,7 +1287,7 @@ run_set_text_conflict_markers(work_item_
/* Check if we should combine with a property conflict... */
svn_skel_t *conflicts;
- SVN_ERR(svn_wc__db_read_conflict(&conflicts, db, local_abspath,
+ SVN_ERR(svn_wc__db_read_conflict(&conflicts, NULL, db, local_abspath,
scratch_pool, scratch_pool));
if (! conflicts)
@@ -1353,7 +1353,7 @@ run_set_property_conflict_marker(work_it
svn_skel_t *conflicts;
apr_hash_t *prop_names;
- SVN_ERR(svn_wc__db_read_conflict(&conflicts, db, local_abspath,
+ SVN_ERR(svn_wc__db_read_conflict(&conflicts, NULL, db, local_abspath,
scratch_pool, scratch_pool));
if (! conflicts)
Modified: subversion/branches/remove-log-addressing/subversion/mod_dav_svn/lock.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/mod_dav_svn/lock.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/mod_dav_svn/lock.c (original)
+++ subversion/branches/remove-log-addressing/subversion/mod_dav_svn/lock.c Sat Feb 14 11:15:05 2015
@@ -805,7 +805,7 @@ append_locks(dav_lockdb *lockdb,
to return the lock details?
Add yet another custom header?
- Just an header doesn't handle a full error chain...
+ Just an header doesn't handle a full error chain...
### Current behavior: we don't report an error.
*/
Modified: subversion/branches/remove-log-addressing/subversion/mod_dav_svn/status.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/mod_dav_svn/status.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/mod_dav_svn/status.c (original)
+++ subversion/branches/remove-log-addressing/subversion/mod_dav_svn/status.c Sat Feb 14 11:15:05 2015
@@ -57,7 +57,7 @@ int dav_svn__status(request_rec *r)
ap_set_content_type(r, "text/html; charset=ISO-8859-1");
- ap_rvputs(r,
+ ap_rvputs(r,
DOCTYPE_HTML_3_2
"<html><head>\n"
"<title>Apache SVN Status</title>\n"
Modified: subversion/branches/remove-log-addressing/subversion/svn/auth-cmd.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/svn/auth-cmd.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/svn/auth-cmd.c (original)
+++ subversion/branches/remove-log-addressing/subversion/svn/auth-cmd.c Sat Feb 14 11:15:05 2015
@@ -373,7 +373,7 @@ svn_cl__auth(apr_getopt_t *os, void *bat
SVN_ERR(svn_cmdline_printf(pool,
_("Credentials cache in '%s' is empty\n"),
svn_dirent_local_style(config_path, pool)));
- else
+ else
return svn_error_createf(SVN_ERR_ILLEGAL_TARGET, 0,
_("Credentials cache in '%s' contains "
"no matching credentials"),
Modified: subversion/branches/remove-log-addressing/subversion/svn/cl.h
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/svn/cl.h?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/svn/cl.h (original)
+++ subversion/branches/remove-log-addressing/subversion/svn/cl.h Sat Feb 14 11:15:05 2015
@@ -248,6 +248,7 @@ typedef struct svn_cl__opt_state_t
svn_boolean_t remove_ignored; /* remove ignored items */
svn_boolean_t no_newline; /* do not output the trailing newline */
svn_boolean_t show_passwords; /* show cached passwords */
+ svn_boolean_t pin_externals; /* pin externals to last-changed revisions */
} svn_cl__opt_state_t;
Modified: subversion/branches/remove-log-addressing/subversion/svn/copy-cmd.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/svn/copy-cmd.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/svn/copy-cmd.c (original)
+++ subversion/branches/remove-log-addressing/subversion/svn/copy-cmd.c Sat Feb 14 11:15:05 2015
@@ -167,8 +167,10 @@ svn_cl__copy(apr_getopt_t *os,
SVN_ERR(svn_cl__make_log_msg_baton(&(ctx->log_msg_baton3), opt_state,
NULL, ctx->config, pool));
- err = svn_client_copy6(sources, dst_path, TRUE,
+ err = svn_client_copy7(sources, dst_path, TRUE,
opt_state->parents, opt_state->ignore_externals,
+ opt_state->pin_externals,
+ NULL, /* pin all externals */
opt_state->revprop_table,
(opt_state->quiet ? NULL : svn_cl__print_commit_info),
NULL,
Modified: subversion/branches/remove-log-addressing/subversion/svn/info-cmd.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/svn/info-cmd.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/svn/info-cmd.c (original)
+++ subversion/branches/remove-log-addressing/subversion/svn/info-cmd.c Sat Feb 14 11:15:05 2015
@@ -391,14 +391,14 @@ print_info(void *baton,
if (info->wc_info->moved_from_abspath)
SVN_ERR(svn_cmdline_printf(pool, _("Moved From: %s\n"),
svn_cl__local_style_skip_ancestor(
- path_prefix,
+ path_prefix,
info->wc_info->moved_from_abspath,
pool)));
if (info->wc_info->moved_to_abspath)
SVN_ERR(svn_cmdline_printf(pool, _("Moved To: %s\n"),
svn_cl__local_style_skip_ancestor(
- path_prefix,
+ path_prefix,
info->wc_info->moved_to_abspath,
pool)));
}
Modified: subversion/branches/remove-log-addressing/subversion/svn/mergeinfo-cmd.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/svn/mergeinfo-cmd.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/svn/mergeinfo-cmd.c (original)
+++ subversion/branches/remove-log-addressing/subversion/svn/mergeinfo-cmd.c Sat Feb 14 11:15:05 2015
@@ -240,7 +240,7 @@ mergeinfo_summary(
target_is_wc = (! svn_path_is_url(target_path_or_url))
&& (target_revision->kind == svn_opt_revision_unspecified
- || target_revision->kind == svn_opt_revision_working
+ || target_revision->kind == svn_opt_revision_working
|| target_revision->kind == svn_opt_revision_base);
SVN_ERR(svn_client_get_merging_summary(
&is_reintegration,
@@ -304,10 +304,10 @@ mergeinfo_log(svn_boolean_t finding_merg
baton->show_diff = FALSE;
baton->depth = depth;
baton->diff_extensions = NULL;
- baton->merge_stack = NULL;
+ baton->merge_stack = NULL;
baton->search_patterns = NULL;
baton->pool = pool;
- log_receiver_baton = baton;
+ log_receiver_baton = baton;
}
else
{
Modified: subversion/branches/remove-log-addressing/subversion/svn/notify.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/svn/notify.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/svn/notify.c (original)
+++ subversion/branches/remove-log-addressing/subversion/svn/notify.c Sat Feb 14 11:15:05 2015
@@ -129,7 +129,7 @@ svn_cl__conflict_stats_resolved(svn_cl__
static const char *
remaining_str(apr_pool_t *pool, int n_remaining)
{
- return apr_psprintf(pool, Q_("%d remaining",
+ return apr_psprintf(pool, Q_("%d remaining",
"%d remaining",
n_remaining),
n_remaining);
Modified: subversion/branches/remove-log-addressing/subversion/svn/propget-cmd.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/svn/propget-cmd.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/svn/propget-cmd.c (original)
+++ subversion/branches/remove-log-addressing/subversion/svn/propget-cmd.c Sat Feb 14 11:15:05 2015
@@ -490,7 +490,7 @@ svn_cl__propget(apr_getopt_t *os,
{
svn_error_t *err;
err = svn_error_createf(SVN_ERR_PROPERTY_NOT_FOUND, NULL,
- _("Property '%s' not found on '%s'"),
+ _("Property '%s' not found on '%s'"),
pname_utf8, target);
svn_handle_warning2(stderr, err, "svn: ");
svn_error_clear(err);
Modified: subversion/branches/remove-log-addressing/subversion/svn/svn.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/svn/svn.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/svn/svn.c (original)
+++ subversion/branches/remove-log-addressing/subversion/svn/svn.c Sat Feb 14 11:15:05 2015
@@ -144,7 +144,8 @@ typedef enum svn_cl__longopt_t {
opt_remove_unversioned,
opt_remove_ignored,
opt_no_newline,
- opt_show_passwords
+ opt_show_passwords,
+ opt_pin_externals,
} svn_cl__longopt_t;
@@ -418,6 +419,10 @@ const apr_getopt_option_t svn_cl__option
{"remove-ignored", opt_remove_ignored, 0, N_("remove ignored items")},
{"no-newline", opt_no_newline, 0, N_("do not output the trailing newline")},
{"show-passwords", opt_show_passwords, 0, N_("show cached passwords")},
+ {"pin-externals", opt_pin_externals, 0,
+ N_("pin externals with no explicit revision to their\n"
+ " "
+ "current revision (recommended when tagging)")},
/* Long-opt Aliases
*
@@ -498,7 +503,7 @@ const svn_opt_subcommand_desc2_t svn_cl_
" expand them.\n"),
{ opt_remove, opt_show_passwords },
{ {opt_remove, N_("remove matching authentication credentials")} }
-
+
},
{ "blame", svn_cl__blame, {"praise", "annotate", "ann"}, N_
@@ -608,7 +613,8 @@ const svn_opt_subcommand_desc2_t svn_cl_
" contact the repository. As such, they may not, by default, be able\n"
" to propagate merge tracking information from the source of the copy\n"
" to the destination.\n"),
- {'r', 'q', opt_ignore_externals, opt_parents, SVN_CL__LOG_MSG_OPTIONS} },
+ {'r', 'q', opt_ignore_externals, opt_parents, SVN_CL__LOG_MSG_OPTIONS,
+ opt_pin_externals} },
{ "delete", svn_cl__delete, {"del", "remove", "rm"}, N_
("Remove files and directories from version control.\n"
@@ -2390,6 +2396,9 @@ sub_main(int *exit_code, int argc, const
case opt_show_passwords:
opt_state.show_passwords = TRUE;
break;
+ case opt_pin_externals:
+ opt_state.pin_externals = TRUE;
+ break;
default:
/* Hmmm. Perhaps this would be a good place to squirrel away
opts that commands like svn diff might need. Hmmm indeed. */
Modified: subversion/branches/remove-log-addressing/subversion/svnadmin/svnadmin.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/svnadmin/svnadmin.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/svnadmin/svnadmin.c (original)
+++ subversion/branches/remove-log-addressing/subversion/svnadmin/svnadmin.c Sat Feb 14 11:15:05 2015
@@ -895,7 +895,7 @@ repos_notify_handler(void *baton,
if (b->error_summary && notify->revision != SVN_INVALID_REVNUM)
{
struct verification_error *verr;
-
+
verr = apr_palloc(b->result_pool, sizeof(*verr));
verr->rev = notify->revision;
verr->err = svn_error_dup(notify->err);
@@ -1869,7 +1869,7 @@ subcommand_verify(apr_getopt_t *os, void
struct verification_error *verr;
svn_error_t *err;
const char *rev_str;
-
+
svn_pool_clear(iterpool);
verr = APR_ARRAY_IDX(notify_baton.error_summary, i,
@@ -1881,7 +1881,7 @@ subcommand_verify(apr_getopt_t *os, void
{
char buf[512];
const char *message;
-
+
message = svn_err_best_message(err, buf, sizeof(buf));
svn_error_clear(svn_stream_printf(notify_baton.feedback_stream,
iterpool,
Modified: subversion/branches/remove-log-addressing/subversion/svnserve/logger.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/svnserve/logger.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/svnserve/logger.c (original)
+++ subversion/branches/remove-log-addressing/subversion/svnserve/logger.c Sat Feb 14 11:15:05 2015
@@ -58,7 +58,7 @@ logger__create_for_stderr(logger_t **log
{
logger_t *result = apr_pcalloc(pool, sizeof(*result));
result->pool = svn_pool_create(pool);
-
+
SVN_ERR(svn_stream_for_stderr(&result->stream, pool));
SVN_ERR(svn_mutex__init(&result->mutex, TRUE, pool));
@@ -74,7 +74,7 @@ logger__create(logger_t **logger,
{
logger_t *result = apr_pcalloc(pool, sizeof(*result));
apr_file_t *file;
-
+
SVN_ERR(svn_io_file_open(&file, filename,
APR_WRITE | APR_CREATE | APR_APPEND,
APR_OS_DEFAULT, pool));
@@ -145,7 +145,7 @@ logger__log_error(logger_t *logger,
}
svn_pool_clear(logger->pool);
-
+
svn_error_clear(svn_mutex__unlock(logger->mutex, SVN_NO_ERROR));
}
}
Modified: subversion/branches/remove-log-addressing/subversion/svnserve/serve.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/svnserve/serve.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/svnserve/serve.c (original)
+++ subversion/branches/remove-log-addressing/subversion/svnserve/serve.c Sat Feb 14 11:15:05 2015
@@ -2179,7 +2179,7 @@ static svn_error_t *log_receiver(void *b
}
}
SVN_ERR(svn_ra_svn__end_list(conn, pool));
-
+
/* send LOG_ENTRY main members */
SVN_ERR(svn_ra_svn__write_data_log_entry(conn, pool,
log_entry->revision,
@@ -2856,7 +2856,7 @@ static svn_error_t *lock_many(svn_ra_svn
¤t_rev);
if (write_err)
break;
-
+
full_path = svn_fspath__join(b->repository->fs_path->data,
svn_relpath_canonicalize(path, subpool),
subpool);
@@ -3755,7 +3755,7 @@ construct_server_baton(server_baton_t **
server_baton_t *b = apr_pcalloc(conn_pool, sizeof(*b));
fs_warning_baton_t *warn_baton;
svn_stringbuf_t *cap_log = svn_stringbuf_create_empty(scratch_pool);
-
+
b->repository = apr_pcalloc(conn_pool, sizeof(*b->repository));
b->repository->username_case = params->username_case;
b->repository->base = params->base;
@@ -3857,7 +3857,7 @@ construct_server_baton(server_baton_t **
err = handle_config_error(find_repos(client_url, params->root, b->vhost,
b->read_only, params->cfg,
b->repository, params->config_pool,
- params->authz_pool, params->fs_config,
+ params->authz_pool, params->fs_config,
conn_pool, scratch_pool),
b);
if (!err)
Modified: subversion/branches/remove-log-addressing/subversion/svnserve/server.h
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/svnserve/server.h?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/svnserve/server.h (original)
+++ subversion/branches/remove-log-addressing/subversion/svnserve/server.h Sat Feb 14 11:15:05 2015
@@ -40,7 +40,7 @@ extern "C" {
#include "private/svn_mutex.h"
#include "private/svn_repos_private.h"
#include "private/svn_subr_private.h"
-
+
enum username_case_type { CASE_FORCE_UPPER, CASE_FORCE_LOWER, CASE_ASIS };
enum authn_type { UNAUTHENTICATED, AUTHENTICATED };
@@ -70,7 +70,7 @@ typedef struct repository_t {
enum access_type auth_access; /* access granted to authenticated users */
enum access_type anon_access; /* access granted to annonymous users */
-
+
} repository_t;
typedef struct client_info_t {
@@ -186,7 +186,7 @@ typedef struct connection_t
the new thread decrease it and when it reaches 0 the pool can be
released. */
svn_atomic_t ref_count;
-
+
} connection_t;
/* Return a client_info_t structure allocated in POOL and initialize it
Modified: subversion/branches/remove-log-addressing/subversion/svnserve/svnserve.c
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/svnserve/svnserve.c?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/svnserve/svnserve.c (original)
+++ subversion/branches/remove-log-addressing/subversion/svnserve/svnserve.c Sat Feb 14 11:15:05 2015
@@ -126,7 +126,7 @@ enum run_mode {
*
* Since very slow connections will hog a full thread for a potentially
* long time before timing out, be sure to not set this limit too low.
- *
+ *
* On the other hand, keep in mind that every thread will allocate up to
* 4MB of unused RAM in the APR allocator of its root pool. 32 bit servers
* must hence do with fewer threads.
@@ -150,7 +150,7 @@ enum run_mode {
*
* Larger values improve scalability with lots of small requests coming
* on over long latency networks.
- *
+ *
* The OS may actually use a lower limit than specified here.
*/
#define ACCEPT_BACKLOG 128
@@ -466,7 +466,7 @@ static apr_status_t redirect_stdout(void
/* Wait for the next client connection to come in from SOCK. Allocate
* the connection in a root pool from CONNECTION_POOLS and assign PARAMS.
* Return the connection object in *CONNECTION.
- *
+ *
* Use HANDLING_MODE for proper internal cleanup.
*/
static svn_error_t *
@@ -477,30 +477,30 @@ accept_connection(connection_t **connect
apr_pool_t *pool)
{
apr_status_t status;
-
+
/* Non-standard pool handling. The main thread never blocks to join
* the connection threads so it cannot clean up after each one. So
* separate pools that can be cleared at thread exit are used. */
-
+
apr_pool_t *connection_pool = svn_pool_create(pool);
*connection = apr_pcalloc(connection_pool, sizeof(**connection));
(*connection)->pool = connection_pool;
(*connection)->params = params;
(*connection)->ref_count = 1;
-
+
do
{
#ifdef WIN32
if (winservice_is_stopping())
exit(0);
#endif
-
+
status = apr_socket_accept(&(*connection)->usock, sock,
connection_pool);
if (handling_mode == connection_mode_fork)
{
apr_proc_t proc;
-
+
/* Collect any zombie child processes. */
while (apr_proc_wait_all_procs(&proc, NULL, NULL, APR_NOWAIT,
connection_pool) == APR_CHILD_DONE)
@@ -510,7 +510,7 @@ accept_connection(connection_t **connect
while (APR_STATUS_IS_EINTR(status)
|| APR_STATUS_IS_ECONNABORTED(status)
|| APR_STATUS_IS_ECONNRESET(status));
-
+
return status
? svn_error_wrap_apr(status, _("Can't accept client connection"))
: SVN_NO_ERROR;
@@ -602,7 +602,7 @@ static void * APR_THREAD_FUNC serve_thre
close_connection(connection);
else
apr_thread_pool_push(threads, serve_thread, connection, 0, NULL);
-
+
return NULL;
}
@@ -985,7 +985,7 @@ sub_main(int *exit_code, int argc, const
SVN_ERR(svn_repos__config_pool_get(¶ms.cfg, NULL,
params.config_pool,
- config_filename,
+ config_filename,
TRUE, /* must_exist */
FALSE, /* names_case_sensitive */
NULL,
Modified: subversion/branches/remove-log-addressing/subversion/tests/cmdline/blame_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/tests/cmdline/blame_tests.py?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/tests/cmdline/blame_tests.py (original)
+++ subversion/branches/remove-log-addressing/subversion/tests/cmdline/blame_tests.py Sat Feb 14 11:15:05 2015
@@ -951,12 +951,12 @@ def blame_youngest_to_oldest(sbox):
line = "New contents for iota\n"
svntest.main.file_append(iota, line)
sbox.simple_commit()
-
+
# Move the file, to check that the operation will peg correctly.
iota_moved = sbox.ospath('iota_moved')
sbox.simple_move('iota', 'iota_moved')
sbox.simple_commit()
-
+
# Delete a line.
open(iota_moved, 'w').write(line)
sbox.simple_commit()
Modified: subversion/branches/remove-log-addressing/subversion/tests/cmdline/checkout_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/tests/cmdline/checkout_tests.py?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/tests/cmdline/checkout_tests.py (original)
+++ subversion/branches/remove-log-addressing/subversion/tests/cmdline/checkout_tests.py Sat Feb 14 11:15:05 2015
@@ -707,7 +707,7 @@ def checkout_peg_rev_date(sbox):
expected_output,
expected_wc)
- # now try another checkout with repo@r1_string
+ # now try another checkout with repo@r1_string
checkout_target = sbox.add_wc_path('checkout2')
os.mkdir(checkout_target)
@@ -1160,9 +1160,9 @@ def checkout_wc_from_drive(sbox):
'D/G/tau' : Item(contents="This is the file 'tau'.\n"),
'D/G/pi' : Item(contents="This is the file 'pi'.\n"),
'D/gamma' : Item(contents="This is the file 'gamma'.\n"),
- 'mu' : Item(contents="This is the file 'mu'.\n"),
+ 'mu' : Item(contents="This is the file 'mu'.\n"),
})
-
+
svntest.actions.run_and_verify_checkout(repo_url + '/A', wc2_dir,
expected_output, expected_wc,
None, None, None, None)
@@ -1187,7 +1187,7 @@ def checkout_wc_from_drive(sbox):
'G/pi' : Item(contents="This is the file 'pi'.\n"),
'G/tau' : Item(contents="This is the file 'tau'.\n"),
'G/rho' : Item(contents="This is the file 'rho'.\n"),
- 'gamma' : Item(contents="This is the file 'gamma'.\n"),
+ 'gamma' : Item(contents="This is the file 'gamma'.\n"),
})
svntest.actions.run_and_verify_checkout(repo_url + '/A/D', wc3_dir,
Modified: subversion/branches/remove-log-addressing/subversion/tests/cmdline/commit_tests.py
URL: http://svn.apache.org/viewvc/subversion/branches/remove-log-addressing/subversion/tests/cmdline/commit_tests.py?rev=1659777&r1=1659776&r2=1659777&view=diff
==============================================================================
--- subversion/branches/remove-log-addressing/subversion/tests/cmdline/commit_tests.py (original)
+++ subversion/branches/remove-log-addressing/subversion/tests/cmdline/commit_tests.py Sat Feb 14 11:15:05 2015
@@ -2931,17 +2931,17 @@ def last_changed_of_copied_subdir(sbox):
def commit_unversioned(sbox):
"verify behavior on unversioned targets"
-
+
sbox.build(read_only=True)
wc_dir = sbox.wc_dir
-
+
expected_err = 'E200009: .*existing.*\' is not under version control'
# Unversioned, but existing file
- svntest.main.file_write(sbox.ospath('existing'), "xxxx")
+ svntest.main.file_write(sbox.ospath('existing'), "xxxx")
svntest.actions.run_and_verify_commit(wc_dir, None, None, expected_err,
sbox.ospath('existing'))
-
+
# Unversioned, not existing
svntest.actions.run_and_verify_commit(wc_dir, None, None, expected_err,
sbox.ospath('not-existing'))