On Thu, Jul 22, 2010 at 5:04 PM, Bert Huijben <b...@qqmail.nl> wrote: > > >> -----Original Message----- >> From: pbu...@apache.org [mailto:pbu...@apache.org] >> Sent: donderdag 22 juli 2010 21:43 >> To: comm...@subversion.apache.org >> Subject: svn commit: r966822 - in /subversion/trunk/subversion: >> libsvn_client/repos_diff.c tests/cmdline/merge_tests.py >> >> Author: pburba >> Date: Thu Jul 22 19:43:08 2010 >> New Revision: 966822 >> >> URL: http://svn.apache.org/viewvc?rev=966822&view=rev >> Log: >> Fix issue #3657 'phantom svn:eol-style changes cause spurious merge >> text >> conflicts'. >> >> * subversion/libsvn_client/repos_diff.c >> >> (change_file_prop): Only stash true property differences in the file >> baton. The DAV RA providers may be sending us all the properties on >> a >> file, not just the differences. > > Shouldn't this be fixed in the ra layer implementations then?
>From what Mike told me in http://subversion.tigris.org/issues/show_bug.cgi?id=3657#desc9 I didn't think so. I assumed that some users of the svn_delta_editor_t rely on this behavior, since we are quite purposeful about it...but looking again at the docstring for change_file_prop, it seems clear that if anybody is relying on this behavior, they are wrong: /** Change the value of a file's property. * - @a file_baton specifies the file whose property should change. * - @a name is the name of the property to change. * - @a value is the new (final) value of the property, or @c NULL if the * property should be removed altogether. * * The callback is guaranteed to be called exactly once for each property * whose value differs between the start and the end of the edit. * * All allocations should be performed in @a pool. */ svn_error_t *(*change_file_prop)(void *file_baton, const char *name, const svn_string_t *value, apr_pool_t *pool); I'll revisit this tomorrow. Thanks, Paul > This would be just 'guessing' if it is a change or a complete set. > > Bert > > >