/[Apache-SVN]
ViewVC logotype

Revision 1731699


Jump to revision: Previous Next
Author: rhuijben
Date: Mon Feb 22 17:42:58 2016 UTC (8 years, 9 months ago)
Changed paths: 3
Log Message:
[Note from the future: reverted in r1795861.]

Make our 3-way-diff/merge handling raise a conflict in a very specific case
where changes in different ranges that touched each other were applied as
adding both ranges in Subversion while other merge tools create a conflict.

With our current diff output on these conflicts the conflict is much easier
to diagnose and resolve than it was in 2003 when this behavior was first
documented by adding a regression test.

This resolves the problem
Found by: Michal Matyl <Michal.Matyl{_AT_}zf.com>
which is essentially about the controversial behavior discussed in 2003 in
http://subversion.tigris.org/servlets/ReadMsg?list=dev&msgNo=35014

The patch_tests.py change is a good example of the change.

* subversion/libsvn_diff/diff3.c
  (svn_diff_diff3_2): Merge adjacent svn_diff__type_diff_modified and
    svn_diff__type_diff_latest ranges to a single conflict range.

* subversion/tests/cmdline/patch_tests.py
  (patch_merge): Remove XFail marker. Update expected result.

* subversion/tests/libsvn_diff/diff-diff3-test.c
  (merge_adjacent_changes): Update expected result.
  (three_way_double_add): Tweak expected result.
  (test_funcs): Mark three_way_double_add as PASS.


Changed paths

Path Details
Directorysubversion/trunk/subversion/libsvn_diff/diff3.c modified , text changed
Directorysubversion/trunk/subversion/tests/cmdline/patch_tests.py modified , text changed
Directorysubversion/trunk/subversion/tests/libsvn_diff/diff-diff3-test.c modified , text changed

infrastructure at apache.org
ViewVC Help
Powered by ViewVC 1.1.26