Author: svn-role
Date: Tue Apr 30 04:01:22 2013
New Revision: 1477466
URL: http://svn.apache.org/r1477466
Log:
Merge r1470031 from trunk:
* r1470031
Correctly set the 'action' and 'reason' fields of a property conflict.
API users were seeing the wrong 'action' and 'reason' for some property
conflicts. 'svn' does not yet use these fields.
Justification:
It's wrong. It's simple. Fixing it in a 1.x.0 release involves less
risk of interfering with any client's work-around for the bug. We may
want to backport changes to 'svn' to report property conflicts better,
and then 'svn' may use these fields; I'm working on such a change.
Votes:
+1: julianfoad, philip
+1: rhuijben (after this patch the situation is better, but I'm not
sure if it is optimal. In merge there are 4 trees to
consider before we can tell the reason. The 4th tree
is available as the pristine version of the local node)
Modified:
subversion/branches/1.8.x/ (props changed)
subversion/branches/1.8.x/STATUS
subversion/branches/1.8.x/subversion/libsvn_wc/conflicts.c
Propchange: subversion/branches/1.8.x/
------------------------------------------------------------------------------
Merged /subversion/trunk:r1470031
Modified: subversion/branches/1.8.x/STATUS
URL:
http://svn.apache.org/viewvc/subversion/branches/1.8.x/STATUS?rev=1477466&r1=1477465&r2=1477466&view=diff
==============================================================================
--- subversion/branches/1.8.x/STATUS (original)
+++ subversion/branches/1.8.x/STATUS Tue Apr 30 04:01:22 2013
@@ -101,22 +101,6 @@ Veto-blocked changes:
Approved changes:
=================
- * r1470031
- Correctly set the 'action' and 'reason' fields of a property conflict.
- API users were seeing the wrong 'action' and 'reason' for some property
- conflicts. 'svn' does not yet use these fields.
- Justification:
- It's wrong. It's simple. Fixing it in a 1.x.0 release involves less
- risk of interfering with any client's work-around for the bug. We may
- want to backport changes to 'svn' to report property conflicts better,
- and then 'svn' may use these fields; I'm working on such a change.
- Votes:
- +1: julianfoad, philip
- +1: rhuijben (after this patch the situation is better, but I'm not
- sure if it is optimal. In merge there are 4 trees to
- consider before we can tell the reason. The 4th tree
- is available as the pristine version of the local node)
-
* r1469862, r1469866, r1475704
Change configure default to --without-apache-libexecdir.
Justification:
Modified: subversion/branches/1.8.x/subversion/libsvn_wc/conflicts.c
URL:
http://svn.apache.org/viewvc/subversion/branches/1.8.x/subversion/libsvn_wc/conflicts.c?rev=1477466&r1=1477465&r2=1477466&view=diff
==============================================================================
--- subversion/branches/1.8.x/subversion/libsvn_wc/conflicts.c (original)
+++ subversion/branches/1.8.x/subversion/libsvn_wc/conflicts.c Tue Apr 30
04:01:22 2013
@@ -2127,11 +2127,12 @@ read_prop_conflicts(apr_array_header_t *
my_value = svn_hash_gets(my_props, propname);
their_value = svn_hash_gets(their_props, propname);
+ old_value = svn_hash_gets(their_old_props, propname);
/* Compute the incoming side of the conflict ('action'). */
if (their_value == NULL)
desc->action = svn_wc_conflict_action_delete;
- else if (my_value == NULL)
+ else if (old_value == NULL)
desc->action = svn_wc_conflict_action_add;
else
desc->action = svn_wc_conflict_action_edit;
@@ -2139,7 +2140,7 @@ read_prop_conflicts(apr_array_header_t *
/* Compute the local side of the conflict ('reason'). */
if (my_value == NULL)
desc->reason = svn_wc_conflict_reason_deleted;
- else if (their_value == NULL)
+ else if (old_value == NULL)
desc->reason = svn_wc_conflict_reason_added;
else
desc->reason = svn_wc_conflict_reason_edited;
@@ -2182,7 +2183,6 @@ read_prop_conflicts(apr_array_header_t *
SVN_ERR(svn_stream_close(s));
}
- old_value = svn_hash_gets(their_old_props, propname);
if (old_value)
{
svn_stream_t *s;