Julian Foad wrote on Sun, Dec 11, 2011 at 20:53:26 +0000: > Look at the following patch hunk, and ideally look also at the earlier > hunk where we see these changes are inside the function that was > called 'reintegrate_merge_locked' but is now a cut-down function > called 'find_reintegrate_merge'. So ... > > >> @@ -10628,31 +10631,76 @@ merge_reintegrate_locked(const char *sou > >> > >> /* Left side: > >> trunk@youngest-trunk-rev-merged-to-branch-at-specified-peg-rev > >> * Right side: branch@specified-peg-revision */ > >> + *source_p = apr_pmemdup(result_pool, &source, sizeof(source)); > >> + return SVN_NO_ERROR; > >> +} > >> > >> - /* Do the real merge! */ > >> - /* ### TODO(reint): Make sure that one isn't the same line ancestor > >> - ### of the other (what's erroneously referred to as "ancestrally > >> - ### related" in this source file). We can merge to trunk without > >> - ### implementing this. */ > >> - err = merge_cousins_and_supplement_mergeinfo(target_abspath, > >> - target_ra_session, > >> - source_ra_session, > >> - &source, yc_ancestor_rev, > >> - TRUE /* same_repos */, > >> - svn_depth_infinity, > >> - FALSE /* ignore_ancestry */, > >> - FALSE /* force */, > >> - FALSE /* record_only */, > >> - dry_run, > > > > Could you clarify why this is removed? I don't see it added elsewhere > > in the patch. Is it a functional change? Or do the diff hunks form an > > optical illusion here? > > Instead of performing the merge, the (renamed) function now only finds > the URLs and returns them. Then, later on (in > merge_reintegrate_locked), instead of calling this 'merge_cousins' > function directly, we instead call 'merge_locked' (which is the guts > of svn_client_merge4()) which calls 'merge_cousins'. >
OK. I can't find reintegrate_merge_locked(), but overall it sounds like an intentional side-effect of gutting the actual merge out of svn_client_find_reintegrate_merge(). Thanks for the explanation.