Bert Huijben wrote: > This might make us add svn:mergeinfo on nodes that didn't have this property > before eliding, while the old code tried to avoid that by checking to see if > the value was inherited from an ancestor.
Hi Bert. I can't quite parse your sentence unambiguously, but I believe this change has no functional effect. In the case where this node (at target_abspath) has no explicit mergeinfo, this code said before my change: set 'target_mergeinfo' to <inherited mergeinfo, if any found, else null> set 'inherited' to <true, if inherited mergeinfo found, else false> if (inherited || target_mergeinfo == NULL) return Therefore it would always return at this point. Now, in the same case, after my change, the code says: set 'target_mergeinfo' to <null> if (target_mergeinfo == NULL) return So, again, it will always return at this point. The only way this 'target_mergeinfo' value can propagate past that 'if' statement is if it is explicit mergeinfo. That's the case both before and after my change. - Julian >URL: http://svn.apache.org/r1591301 >Log: >* subversion/libsvn_client/mergeinfo.c > (svn_client__elide_mergeinfo): A tiny simplification: when we want only > explicit mergeinfo, ask for only explicit mergeinfo. > >Modified: > subversion/trunk/subversion/libsvn_client/mergeinfo.c > >Modified: subversion/trunk/subversion/libsvn_client/mergeinfo.c >============================================================================== >--- subversion/trunk/subversion/libsvn_client/mergeinfo.c (original) >+++ subversion/trunk/subversion/libsvn_client/mergeinfo.c Wed Apr 30 14:12:08 >2014 >@@ -922,13 +922,12 @@ svn_client__elide_mergeinfo(const char * > { > svn_mergeinfo_t target_mergeinfo; > svn_mergeinfo_t mergeinfo = NULL; >- svn_boolean_t inherited; > const char *walk_path; > svn_error_t *err; > > /* Get the TARGET_WCPATH's explicit mergeinfo. */ >- err = svn_client__get_wc_mergeinfo(&target_mergeinfo, &inherited, >- svn_mergeinfo_inherited, >+ err = svn_client__get_wc_mergeinfo(&target_mergeinfo, NULL, >+ svn_mergeinfo_explicit, > target_abspath, > limit_abspath, > &walk_path, FALSE, >@@ -951,7 +950,7 @@ svn_client__elide_mergeinfo(const char * > > /* If TARGET_WCPATH has no explicit mergeinfo, there's nothing to > elide, we're done. */ >- if (inherited || target_mergeinfo == NULL) >+ if (target_mergeinfo == NULL) > return SVN_NO_ERROR; > > /* Get TARGET_WCPATH's inherited mergeinfo from the WC. */