Julian Foad <julianf...@btopenworld.com> writes: >> + >> + if (merge_outcome == svn_wc_merge_conflict) >> + { >> + content_state = svn_wc_notify_state_conflicted; >> + } >> + else >> + { > >> + SVN_ERR(svn_wc__internal_file_modified_p(&is_locally_modified, >> + db, local_abspath, >> + FALSE /* >> exact_comparison */, >> + scratch_pool)); >> + if (is_locally_modified) >> + content_state = svn_wc_notify_state_merged; >> + else >> + content_state = svn_wc_notify_state_changed; >> + } > > I don't understand that last 'else' block. > > We're asking 'Is it > locally modified?' but I don't think we have a consistent notion of what > 'it' is, since the above svn_wc__internal_merge() might or might not > have updated the WC file at local_abspath -- it might instead have created a > temp file and set up > some work items which will install that file later [1]. > > Do > we actually want to ask here, 'Was the file locally modified before we > started merging?' If so, this whole block should be replaced with just > "content_state = svn_wc_notify_state_merged;".
I'm a bit confused by that code as well but I didn't add that code in this commit I just changed the identation. It dates back to r1406631. -- Certified & Supported Apache Subversion Downloads: http://www.wandisco.com/subversion/download