Philip Martin <philip.mar...@wandisco.com> writes:

> Markus Schaber <m.scha...@3s-software.com> writes:
>
>> [[[
>> libsvn_wc: no conflict for identical files
>>
>> [ insubversion/libsvn_wc ]
>>
>> * merge.c
>>   (merge_file_trivial): Successful report merged when incoming file is 
>> identical to existing, locally modified file.
>>
>> ]]]
>>
>> Thank you,
>> Markus Schaber
>>
>> Index: subversion/libsvn_wc/merge.c
>> ===================================================================
>> --- subversion/libsvn_wc/merge.c    (revision 1348784)
>> +++ subversion/libsvn_wc/merge.c    (working copy)
>> @@ -992,6 +992,20 @@
>>
>>        return SVN_NO_ERROR;
>>      }
>> +  else
>> +    {
>> +      /* Check whether the existing version equals the right side.
>> +       * If it does, the local changes reflect the same state as the 
>> incoming
>> +       * file, so there is no conflict. But as the state of the file 
>> actually
>> +       * changes, we intentionally report this as a successful merge. */
>> +      SVN_ERR(svn_io_files_contents_same_p(&same_contents, 
>> detranslated_target_abspath,
>> +                                           right_abspath, scratch_pool));
>> +      if (same_contents)
>> +        {
>> +          *merge_outcome = svn_wc_merge_merged;
>> +          return SVN_NO_ERROR;
>> +        }
>> +    }
>>
>>    *merge_outcome = svn_wc_merge_no_merge;
>>    return SVN_NO_ERROR;
>
> What about removing XFail from update_binary_file_3?

The code path you are changing is for all files, not just binary files,
so it affects all merges.  The documentation for merge_file_trivial
needs to be updated.

-- 
uberSVN: Apache Subversion Made Easy
http://www.uberSVN.com

Reply via email to