On Wed, Apr 7, 2010 at 3:05 AM, <gstein_at_apache.org> wrote:
> Author: gstein
> Date: Wed Apr 7 07:05:28 2010
> New Revision: 931449
> URL: http://svn.apache.org/viewvc?rev=931449&view=rev
> Fix the inheritance handling for entry->copyfrom_*. The mapping code was
> not properly considering the copyfrom data between "this" node and the
> ancestor nodes.
> This fixes merge_tests 34 and 134 (broken by r930162), but proceeds to
> break diff_tests 41 and merge_tests 8. Two steps forward...
> * subversion/libsvn_wc/entries.c:
> (read_entries_new): rework the logic that analyzes copyfrom information
> on "this" node and the ancestor nodes. it was not (properly)
> considering that an ancestor may imply "this" node is part of a copy.
> * subversion/tests/cmdline/switch_tests.py:
> (tree_conflicts_on_switch_2_1): note that we fail because an (A)dd is
> incorrectly reported as a (M)odify, due to issues in wc_db.
> (test_list): mark the above as an XFail
> * subversion/tests/cmdline/update_tests.py:
> (tree_conflicts_on_update_2_1, tree_conflict_uc2_schedule_re_add): leave
> comments about the breakage due to wc_db issues.
> (test_list): mark the above two tests as XFail
> Modified: subversion/trunk/subversion/libsvn_wc/entries.c
> URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/entries.c?rev=931449&r1=931448&r2=931449&view=diff
> --- subversion/trunk/subversion/libsvn_wc/entries.c (original)
> +++ subversion/trunk/subversion/libsvn_wc/entries.c Wed Apr 7 07:05:28 2010
> @@ -727,6 +727,8 @@ read_entries_new(apr_hash_t **result_ent
> || status == svn_wc__db_status_obstructed_add)
> svn_wc__db_status_t work_status;
> + const char *op_root_abspath;
> + const char *scanned_original_relpath;
> svn_revnum_t original_revision;
> /* For child nodes, pick up the parent's revision. */
> @@ -817,17 +819,19 @@ read_entries_new(apr_hash_t **result_ent
> - NULL,
> + &op_root_abspath,
> - NULL, NULL, NULL, &original_revision,
> + &scanned_original_relpath,
> + NULL, NULL, /* original_root|uuid */
> + &original_revision,
> result_pool, iterpool));
> + SVN_DBG(("entry: work_status=%d cmt_rev=%ld relpath='%s'\n", work_status, entry->cmt_rev, original_repos_relpath));
Hi Greg - looks like you left a scalpel in the patient.
Received on 2010-04-07 17:30:55 CEST