[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

[PATCH] Merge tests -63 fails over ra_dav

From: Kamesh Jayachandran <kamesh_at_collab.net>
Date: 2007-08-23 17:20:24 CEST

Hi All,
Since r25341, single file(which is dead in the HEAD) merge fails.

The cause of the issue is r25341 attempts to retrieve the reflected
merge from target on merge-source and refines the merge range to be applied.

To do this it runs 'mergeinfo' report on a ra_session given to it.

Our mergeinfo report could not understand anything other than repo root.

As the ra_session given to it is rooted to the merge source url, this fails.

I am attaching the patch to fix the same for broader review.( I am
confused whether to fix mod_dav_svn or the client and document the same)

With regards
Kamesh Jayachandran

Merge report request on a URL to path inside the repository fails.

* subversion/libsvn_client/merge.c
   Reparent the ra_session to repository_root and run mergeinfo. Change
   it back to original url after running mergeinfo REPORT.

Index: subversion/libsvn_client/merge.c
--- subversion/libsvn_client/merge.c (revision 26259)
+++ subversion/libsvn_client/merge.c (working copy)
@@ -1580,6 +1580,7 @@
   SVN_ERR(svn_client__path_relative_to_root(&repos_rel_path, src_url,
                                             entry->repos, ra_session,
                                             NULL, pool));
+ svn_ra_reparent(ra_session, entry->repos, pool);
   /* Find any mergeinfo added in RANGE. */
   min_rev = MIN(unrefined_range->start, unrefined_range->end);
@@ -1612,6 +1613,7 @@
     SVN_ERR(svn_rangelist_remove(requested_rangelist, src_rangelist_for_tgt,
                                  svn_rangelist_equal_inheritance, pool));
+ svn_ra_reparent(ra_session, src_url, pool);
   return SVN_NO_ERROR;

To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Thu Aug 23 17:16:24 2007

This is an archived mail posted to the Subversion Dev mailing list.